Class: FriendlyShipping::Services::ShipEngine::ParseVoidResponse

Inherits:
Object
  • Object
show all
Extended by:
Dry::Monads::Result::Mixin
Defined in:
lib/friendly_shipping/services/ship_engine/parse_void_response.rb

Class Method Summary collapse

Class Method Details

.call(request:, response:) ⇒ Object



9
10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/friendly_shipping/services/ship_engine/parse_void_response.rb', line 9

def self.call(request:, response:)
  parsed_json = JSON.parse(response.body)
  approved, message = parsed_json["approved"], parsed_json["message"]
  if approved
    Success(
      ApiResult.new(message, original_request: request, original_response: response)
    )
  else
    Failure(
      ApiFailure.new(message, original_request: request, original_response: response)
    )
  end
end