zuora_api 1.7.15 → 1.7.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/insights_api/login.rb +5 -6
- data/lib/zuora_api/exceptions.rb +1 -0
- data/lib/zuora_api/login.rb +34 -32
- data/lib/zuora_api/logins/basic.rb +2 -1
- data/lib/zuora_api/logins/oauth.rb +11 -9
- data/lib/zuora_api/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e0d12f28a8dd0d3dc042691ed4f6d264ac51ce9671b219ab77563f48848613df
|
4
|
+
data.tar.gz: c3d3529f936d9af377acb360d0f0825619030a6f31131286ef10e1b34e568b3c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8b376ab16beafc2816d107164afd6b62e80a31dcb084ee20e28ba2fc9cf6ee881158ed6b685770d7d86857a75d3957ff3844aecf17936a50a17ee7f05225a91f
|
7
|
+
data.tar.gz: 89366c69cd6f137a812b76a92501549324997da097b4bf2b3cbea7f478a9f0951a4641e22728f6594e7e4d1ce944513ddea606b1ebc9fb273f1c8ff11c2c11a2
|
data/lib/insights_api/login.rb
CHANGED
@@ -190,12 +190,11 @@ module InsightsAPI
|
|
190
190
|
end
|
191
191
|
|
192
192
|
rescue => ex
|
193
|
-
if
|
194
|
-
|
195
|
-
|
196
|
-
|
197
|
-
|
198
|
-
end
|
193
|
+
raise ex if tries.zero?
|
194
|
+
|
195
|
+
tries -= 1
|
196
|
+
sleep 3
|
197
|
+
retry
|
199
198
|
else
|
200
199
|
return temp_file
|
201
200
|
end
|
data/lib/zuora_api/exceptions.rb
CHANGED
data/lib/zuora_api/login.rb
CHANGED
@@ -468,7 +468,8 @@ module ZuoraAPI
|
|
468
468
|
|
469
469
|
raise_errors(type: :SOAP, body: output_xml, response: response)
|
470
470
|
rescue ZuoraAPI::Exceptions::ZuoraAPISessionError => ex
|
471
|
-
if !
|
471
|
+
if !tries.zero? && z_session
|
472
|
+
tries -= 1
|
472
473
|
Rails.logger.debug("SOAP Call - Session Invalid")
|
473
474
|
self.new_session(auth_type: :basic, zuora_track_id: zuora_track_id)
|
474
475
|
retry
|
@@ -486,17 +487,16 @@ module ZuoraAPI
|
|
486
487
|
return output_xml, input_xml, response
|
487
488
|
end
|
488
489
|
rescue *CONNECTION_EXCEPTIONS => ex
|
489
|
-
if
|
490
|
-
|
491
|
-
|
492
|
-
|
493
|
-
|
494
|
-
|
495
|
-
end
|
490
|
+
raise ex if tries.zero?
|
491
|
+
|
492
|
+
tries -= 1
|
493
|
+
Rails.logger.info("SOAP Call - #{ex.class} Timed out will retry after 5 seconds")
|
494
|
+
sleep(self.timeout_sleep)
|
495
|
+
retry
|
496
496
|
rescue *CONNECTION_READ_EXCEPTIONS => ex
|
497
|
-
if
|
498
|
-
|
499
|
-
|
497
|
+
raise ex if tries.zero?
|
498
|
+
|
499
|
+
tries -= 1
|
500
500
|
|
501
501
|
if ex.is_a?(Errno::ECONNRESET) && ex.message.include?('SSL_connect')
|
502
502
|
retry
|
@@ -785,15 +785,15 @@ module ZuoraAPI
|
|
785
785
|
des_hash[:related_objects] = output_xml.xpath(".//related-objects").xpath(".//object").map{ |x| [x.xpath(".//name").text.to_sym, [ [:url, x.attributes["href"].value], [:label, x.xpath(".//name").text ] ].to_h] }.to_h
|
786
786
|
end
|
787
787
|
rescue *(CONNECTION_EXCEPTIONS + CONNECTION_READ_EXCEPTIONS) => ex
|
788
|
-
if
|
789
|
-
|
790
|
-
|
791
|
-
|
792
|
-
|
793
|
-
|
794
|
-
end
|
788
|
+
raise ex if tries.zero?
|
789
|
+
|
790
|
+
tries -= 1
|
791
|
+
Rails.logger.info("Describe - #{ex.class} Timed out will retry after 5 seconds")
|
792
|
+
sleep(self.timeout_sleep)
|
793
|
+
retry
|
795
794
|
rescue ZuoraAPI::Exceptions::ZuoraAPISessionError => ex
|
796
|
-
if !
|
795
|
+
if !tries.zero? && self.status == 'Active'
|
796
|
+
tries -= 1
|
797
797
|
Rails.logger.debug("Describe session expired. Starting new session.")
|
798
798
|
self.new_session
|
799
799
|
retry
|
@@ -859,7 +859,8 @@ module ZuoraAPI
|
|
859
859
|
raise ex
|
860
860
|
end
|
861
861
|
rescue ZuoraAPI::Exceptions::ZuoraAPISessionError => ex
|
862
|
-
if !
|
862
|
+
if !tries.zero? && z_session
|
863
|
+
tries -= 1
|
863
864
|
Rails.logger.debug("Rest Call - Session Invalid #{session_type}")
|
864
865
|
self.new_session(auth_type: session_type)
|
865
866
|
retry
|
@@ -879,17 +880,16 @@ module ZuoraAPI
|
|
879
880
|
rescue ZuoraAPI::Exceptions::BadEntityError => ex
|
880
881
|
raise ex
|
881
882
|
rescue *CONNECTION_EXCEPTIONS => ex
|
882
|
-
if
|
883
|
-
|
884
|
-
|
885
|
-
|
886
|
-
|
887
|
-
|
888
|
-
end
|
883
|
+
raise ex if tries.zero?
|
884
|
+
|
885
|
+
tries -= 1
|
886
|
+
Rails.logger.info("Rest Call - #{ex.class} Timed out will retry after 5 seconds")
|
887
|
+
sleep(self.timeout_sleep)
|
888
|
+
retry
|
889
889
|
rescue *CONNECTION_READ_EXCEPTIONS => ex
|
890
|
-
if
|
891
|
-
|
892
|
-
|
890
|
+
raise ex if tries.zero?
|
891
|
+
|
892
|
+
tries -= 1
|
893
893
|
|
894
894
|
if ex.is_a?(Errno::ECONNRESET) && ex.message.include?('SSL_connect')
|
895
895
|
retry
|
@@ -952,7 +952,7 @@ module ZuoraAPI
|
|
952
952
|
return products, catalog_map
|
953
953
|
end
|
954
954
|
|
955
|
-
def get_file(url: nil, headers: {}, z_session: true, tempfile: true, output_file_name: nil, add_timestamp: true, file_path: defined?(Rails.root.join('tmp')) ? Rails.root.join('tmp') : Pathname.new(Dir.pwd), timeout_retries: 3, timeout: 120, session_type: :basic, **execute_params)
|
955
|
+
def get_file(url: nil, headers: {}, z_session: true, tempfile: true, output_file_name: nil, zuora_track_id: nil, add_timestamp: true, file_path: defined?(Rails.root.join('tmp')) ? Rails.root.join('tmp') : Pathname.new(Dir.pwd), timeout_retries: 3, timeout: 120, session_type: :basic, **execute_params)
|
956
956
|
raise "file_path must be of class Pathname" if file_path.class != Pathname
|
957
957
|
|
958
958
|
#Make sure directory exists
|
@@ -969,6 +969,8 @@ module ZuoraAPI
|
|
969
969
|
headers = headers.merge({"Zuora-Entity-Ids" => self.entity_id}) if !self.entity_id.blank?
|
970
970
|
end
|
971
971
|
|
972
|
+
headers['Zuora-Track-Id'] = zuora_track_id if zuora_track_id.present?
|
973
|
+
|
972
974
|
response_save = nil
|
973
975
|
retry_count ||= timeout_retries
|
974
976
|
http.request_get(uri.request_uri, headers) do |response|
|
@@ -1064,7 +1066,7 @@ module ZuoraAPI
|
|
1064
1066
|
raise
|
1065
1067
|
end
|
1066
1068
|
else
|
1067
|
-
raise
|
1069
|
+
raise ZuoraAPI::Exceptions::FileDownloadError.new("File Download Failed #{response.class}")
|
1068
1070
|
end
|
1069
1071
|
end
|
1070
1072
|
|
@@ -98,7 +98,8 @@ module ZuoraAPI
|
|
98
98
|
end
|
99
99
|
return self.status
|
100
100
|
rescue *(CONNECTION_EXCEPTIONS + CONNECTION_READ_EXCEPTIONS) => ex
|
101
|
-
if !
|
101
|
+
if !tries.zero?
|
102
|
+
tries -= 1
|
102
103
|
Rails.logger.info {"#{ex.class} Timed out will retry after 5 seconds"}
|
103
104
|
sleep(self.timeout_sleep)
|
104
105
|
retry
|
@@ -36,7 +36,8 @@ module ZuoraAPI
|
|
36
36
|
output_json, response = self.rest_call(:url => self.rest_endpoint("connections"), :session_type => :bearer, :headers => headers)
|
37
37
|
self.current_session = response.headers.to_h['set-cookie'][0].split(';')[0].split('=',2)[1].gsub('%3D', '=')
|
38
38
|
rescue ZuoraAPI::Exceptions::ZuoraAPISessionError => ex
|
39
|
-
if !
|
39
|
+
if !tries.zero?
|
40
|
+
tries -= 1
|
40
41
|
Rails.logger.debug {"Session Invalid"}
|
41
42
|
self.new_session(auth_type: :bearer)
|
42
43
|
retry
|
@@ -54,7 +55,8 @@ module ZuoraAPI
|
|
54
55
|
return [output_json, response]
|
55
56
|
end
|
56
57
|
rescue *(CONNECTION_EXCEPTIONS + CONNECTION_READ_EXCEPTIONS) => ex
|
57
|
-
if !
|
58
|
+
if !tries.zero?
|
59
|
+
tries -= 1
|
58
60
|
Rails.logger.info {"#{ex.class} Timed out will retry after 5 seconds"}
|
59
61
|
sleep(self.timeout_sleep)
|
60
62
|
retry
|
@@ -88,12 +90,11 @@ module ZuoraAPI
|
|
88
90
|
return self.status
|
89
91
|
|
90
92
|
rescue ZuoraAPI::Exceptions::ZuoraUnexpectedError => ex
|
91
|
-
if
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
end
|
93
|
+
raise ex if tries.zero?
|
94
|
+
|
95
|
+
tries -= 1
|
96
|
+
sleep(self.timeout_sleep)
|
97
|
+
retry
|
97
98
|
rescue ZuoraAPI::Exceptions::ZuoraAPISessionError => ex
|
98
99
|
self.bearer_token = nil
|
99
100
|
self.oauth_session_expires_at = nil
|
@@ -111,7 +112,8 @@ module ZuoraAPI
|
|
111
112
|
rescue ZuoraAPI::Exceptions::ZuoraAPIError, ZuoraAPI::Exceptions::ZuoraAPIRequestLimit, ZuoraAPI::Exceptions::ZuoraAPILockCompetition => ex
|
112
113
|
raise ex
|
113
114
|
rescue *(CONNECTION_EXCEPTIONS + CONNECTION_READ_EXCEPTIONS) => ex
|
114
|
-
if !
|
115
|
+
if !tries.zero?
|
116
|
+
tries -= 1
|
115
117
|
Rails.logger.info {"#{ex.class} Timed out will retry after 5 seconds"}
|
116
118
|
sleep(self.timeout_sleep)
|
117
119
|
retry
|
data/lib/zuora_api/version.rb
CHANGED