Module: ONCCertificationG10TestKit::ExportKickOffPerformer
- Defined in:
- lib/onc_certification_g10_test_kit/export_kick_off_performer.rb
Instance Method Summary collapse
- #access_token ⇒ Object
- #delete_export_kick_off_request ⇒ Object
- #perform_export_kick_off_request(use_token: true, params: {}) ⇒ Object
Instance Method Details
#access_token ⇒ Object
3 4 5 |
# File 'lib/onc_certification_g10_test_kit/export_kick_off_performer.rb', line 3 def access_token bulk_smart_auth_info.access_token end |
#delete_export_kick_off_request ⇒ Object
19 20 21 22 23 24 25 26 27 |
# File 'lib/onc_certification_g10_test_kit/export_kick_off_performer.rb', line 19 def delete_export_kick_off_request polling_url = request&.response_header('content-location')&.value assert polling_url.present?, 'Export response header did not include "Content-Location"' headers = { accept: 'application/json', authorization: "Bearer #{access_token}" } delete(polling_url, headers:) assert_response_status(202) end |
#perform_export_kick_off_request(use_token: true, params: {}) ⇒ Object
7 8 9 10 11 12 13 14 15 16 17 |
# File 'lib/onc_certification_g10_test_kit/export_kick_off_performer.rb', line 7 def perform_export_kick_off_request(use_token: true, params: {}) skip_if use_token && access_token.blank?, 'Could not verify this functionality when bearer token is not set' headers = { accept: 'application/fhir+json', prefer: 'respond-async' } headers.merge!({ authorization: "Bearer #{access_token}" }) if use_token url = "Group/#{group_id}/$export" param_str = params.map { |k, v| URI.encode_www_form(k => v) }.join('&') url.concat("?#{param_str}") unless param_str.empty? get(url, client: :bulk_server, name: :export, headers:) end |