Class: PdfServices::Base::Operation
- Inherits:
-
Object
- Object
- PdfServices::Base::Operation
show all
- Defined in:
- lib/pdfservices/operations/base.rb
Constant Summary
collapse
- BASE_ENDPOINT =
'https://pdf-services-ue1.adobe.io/operation/'
- ASSETS_ENDPOINT =
'https://pdf-services-ue1.adobe.io/assets/'
- STATUS =
{
in_progress: 'in progress',
done: 'done',
failed: 'failed'
}.freeze
Instance Method Summary
collapse
Instance Method Details
#handle_response(response, asset, &block) ⇒ Object
25
26
27
28
29
30
31
32
|
# File 'lib/pdfservices/operations/base.rb', line 25
def handle_response(response, asset, &block)
unless response.status == 201
raise "Unexpected response status from operation endpoint: #{response.status}, #{response.body}"
end
document_url = response.['location']
poll_document_result document_url, asset, &block
end
|
#poll_document_result(url, original_asset, &block) ⇒ Object
19
20
21
22
23
|
# File 'lib/pdfservices/operations/base.rb', line 19
def poll_document_result(url, original_asset, &block)
response = @api.get(url)
json_response = JSON.parse(response.body.to_s)
handle_polling_result(url, json_response, original_asset, &block)
end
|
#upload_asset(asset) ⇒ Object
14
15
16
17
|
# File 'lib/pdfservices/operations/base.rb', line 14
def upload_asset(asset)
asset = File.open(asset, 'rb') if asset.is_a?(String) && File.exist?(asset)
Asset.new(@api).upload(asset)
end
|