zuora_api 1.8.21 → 1.8.22
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/CHANGELOG.md +1 -1
- data/lib/zuora_api/login.rb +17 -56
- 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: 5546a62ebcd1e41ab71c6e8555c49a9c8de4e627b69c2d6c3ee658e32a773a81
|
4
|
+
data.tar.gz: 75c008dec5f8652cfcdcd86d3e0503ddab0d6fe26789bd17a8b87551fdce7b3f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e8ee6cc80db3980eff77b60f94d8ce97a08fdabc5ed013a927c1ae8e8f40bc76fbaabcd95fae270dba1e7c813127aa526791e146d4838a610c29c4b56bc4e154
|
7
|
+
data.tar.gz: dc8cfcca12a83c6c0103e908c77b9f6838f9cb426a7762cd34998015e8f94d35ae756691b42527780204a65a22cea47502f057df48028551a5395271e7300c7a
|
data/CHANGELOG.md
CHANGED
data/lib/zuora_api/login.rb
CHANGED
@@ -1395,68 +1395,35 @@ module ZuoraAPI
|
|
1395
1395
|
|
1396
1396
|
def getDataSourceExport(query, extract: true, encrypted: false, zip: true, z_track_id: "")
|
1397
1397
|
tries ||= 3
|
1398
|
-
|
1399
|
-
|
1400
|
-
|
1401
|
-
|
1402
|
-
|
1403
|
-
|
1404
|
-
|
1405
|
-
|
1406
|
-
xml['
|
1407
|
-
xml['ns1'].zObjects('xsi:type' => "ns2:Export") do
|
1408
|
-
xml['ns2'].Format 'csv'
|
1409
|
-
xml['ns2'].Zip zip
|
1410
|
-
xml['ns2'].Name 'googman'
|
1411
|
-
xml['ns2'].Query query
|
1412
|
-
xml['ns2'].Encrypted encrypted
|
1413
|
-
end
|
1414
|
-
end
|
1398
|
+
|
1399
|
+
output_xml, input_xml = self.soap_call(debug: false, timeout_retry: true, zuora_track_id: z_track_id) do |xml|
|
1400
|
+
xml['ns1'].create do
|
1401
|
+
xml['ns1'].zObjects('xsi:type' => "ns2:Export") do
|
1402
|
+
xml['ns2'].Format 'csv'
|
1403
|
+
xml['ns2'].Zip zip
|
1404
|
+
xml['ns2'].Name 'googman'
|
1405
|
+
xml['ns2'].Query query
|
1406
|
+
xml['ns2'].Encrypted encrypted
|
1415
1407
|
end
|
1416
1408
|
end
|
1417
1409
|
end
|
1418
|
-
|
1419
|
-
response_query = HTTParty.post(self.url, body: request.to_xml(:save_with => XML_SAVE_OPTIONS).strip, headers: {'Content-Type' => "application/json; charset=utf-8", "Z-Track-Id" => z_track_id}, :timeout => 130)
|
1420
|
-
|
1421
|
-
output_xml = Nokogiri::XML(response_query.body)
|
1422
|
-
raise_errors(type: :SOAP, body: output_xml, response: response_query) if output_xml.xpath('//ns1:Success', 'ns1' =>'http://api.zuora.com/').text != "true"
|
1423
|
-
|
1424
|
-
# raise "Export Creation Unsuccessful : #{response_query.code}: #{response_query.parsed_response}" if output_xml.xpath('//ns1:Success', 'ns1' =>'http://api.zuora.com/').text != "true"
|
1425
1410
|
|
1426
1411
|
id = output_xml.xpath('//ns1:Id', 'ns1' =>'http://api.zuora.com/').text
|
1427
1412
|
|
1428
|
-
confirmRequest = Nokogiri::XML::Builder.new do |xml|
|
1429
|
-
xml['SOAP-ENV'].Envelope('xmlns:SOAP-ENV' => "http://schemas.xmlsoap.org/soap/envelope/", 'xmlns:ns2' => "http://object.api.zuora.com/", 'xmlns:xsi' => "http://www.w3.org/2001/XMLSchema-instance", 'xmlns:ns1' => "http://api.zuora.com/") do
|
1430
|
-
xml['SOAP-ENV'].Header do
|
1431
|
-
xml['ns1'].SessionHeader do
|
1432
|
-
xml['ns1'].session self.get_session(prefix: false, auth_type: :basic, zuora_track_id: z_track_id)
|
1433
|
-
end
|
1434
|
-
end
|
1435
|
-
xml['SOAP-ENV'].Body do
|
1436
|
-
xml['ns1'].query do
|
1437
|
-
xml['ns1'].queryString "SELECT Id, CreatedById, CreatedDate, Encrypted, FileId, Format, Name, Query, Size, Status, StatusReason, UpdatedById, UpdatedDate, Zip From Export where Id = '#{id}'"
|
1438
|
-
end
|
1439
|
-
end
|
1440
|
-
end
|
1441
|
-
end
|
1442
1413
|
result = 'Waiting'
|
1443
|
-
|
1444
1414
|
while result != "Completed"
|
1445
1415
|
sleep 3
|
1446
|
-
|
1447
|
-
|
1448
|
-
|
1416
|
+
output_xml, input_xml = self.soap_call(debug: false, timeout_retry: true, zuora_track_id: z_track_id) do |xml|
|
1417
|
+
xml['ns1'].query do
|
1418
|
+
xml['ns1'].queryString "SELECT Id, CreatedById, CreatedDate, Encrypted, FileId, Format, Name, Query, Size, Status, StatusReason, UpdatedById, UpdatedDate, Zip From Export where Id = '#{id}'"
|
1419
|
+
end
|
1420
|
+
end
|
1449
1421
|
result = output_xml.xpath('//ns2:Status', 'ns2' =>'http://object.api.zuora.com/').text
|
1450
|
-
status_code = response_query.code if response_query
|
1451
|
-
|
1452
|
-
raise_errors(type: :SOAP, body: output_xml, response: response_query) if result.blank? || result == "Failed"
|
1453
|
-
# raise "Export Creation Unsuccessful : #{response_query.code}: #{response_query.parsed_response}" if result.blank? || result == "Failed"
|
1454
1422
|
end
|
1455
1423
|
|
1456
1424
|
file_id = output_xml.xpath('//ns2:FileId', 'ns2' =>'http://object.api.zuora.com/').text
|
1457
1425
|
export_file = get_file(:url => self.fileURL(file_id))
|
1458
1426
|
export_file_path = export_file.path
|
1459
|
-
Rails.logger.debug("=====> Export path #{export_file.path}")
|
1460
1427
|
|
1461
1428
|
if extract && zip
|
1462
1429
|
require "zip"
|
@@ -1480,24 +1447,18 @@ module ZuoraAPI
|
|
1480
1447
|
rescue ZuoraAPI::Exceptions::ZuoraUnexpectedError => ex
|
1481
1448
|
if !(tries -= 1).zero?
|
1482
1449
|
Rails.logger.info("Trace ID: #{z_track_id} UnexpectedError, will retry after 10 seconds")
|
1483
|
-
sleep
|
1450
|
+
sleep(self.timeout_sleep)
|
1484
1451
|
retry
|
1485
1452
|
end
|
1486
1453
|
raise ex
|
1487
|
-
|
1488
|
-
rescue *ZUORA_API_ERRORS => ex
|
1489
|
-
raise ex
|
1490
|
-
|
1454
|
+
|
1491
1455
|
rescue *(CONNECTION_EXCEPTIONS + CONNECTION_READ_EXCEPTIONS) => ex
|
1492
1456
|
if !(tries -= 1).zero?
|
1493
1457
|
Rails.logger.info("Trace ID: #{z_track_id} Timed out will retry after 5 seconds")
|
1494
|
-
sleep
|
1458
|
+
sleep(self.timeout_sleep)
|
1495
1459
|
retry
|
1496
1460
|
end
|
1497
1461
|
raise ex
|
1498
|
-
|
1499
|
-
rescue ZuoraAPI::Exceptions::BadEntityError => ex
|
1500
|
-
raise ex
|
1501
1462
|
end
|
1502
1463
|
|
1503
1464
|
def query(query, parse = false)
|
data/lib/zuora_api/version.rb
CHANGED