Sha256: 8a96b5bb9afef71b81d627c8b90202a53ec5fe58393f0fc561dfdcae1ffd4996

Contents?: true

Size: 666 Bytes

Versions: 7

Compression:

Stored size: 666 Bytes

Contents

# frozen_string_literal: true

require 'dry/monads/result'

module FriendlyShipping
  module Services
    class Ups
      class ParseShipmentConfirmResponse
        def self.call(request:, response:)
          parsing_result = ParseXMLResponse.call(
            request: request,
            response: response,
            expected_root_tag: 'ShipmentConfirmResponse'
          )
          parsing_result.fmap do |xml|
            FriendlyShipping::ApiResult.new(
              xml.root.at('ShipmentDigest').text,
              original_request: request,
              original_response: response
            )
          end
        end
      end
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
friendly_shipping-0.6.5 lib/friendly_shipping/services/ups/parse_shipment_confirm_response.rb
friendly_shipping-0.6.4 lib/friendly_shipping/services/ups/parse_shipment_confirm_response.rb
friendly_shipping-0.6.3 lib/friendly_shipping/services/ups/parse_shipment_confirm_response.rb
friendly_shipping-0.6.2 lib/friendly_shipping/services/ups/parse_shipment_confirm_response.rb
friendly_shipping-0.6.1 lib/friendly_shipping/services/ups/parse_shipment_confirm_response.rb
friendly_shipping-0.6.0 lib/friendly_shipping/services/ups/parse_shipment_confirm_response.rb
friendly_shipping-0.5.3 lib/friendly_shipping/services/ups/parse_shipment_confirm_response.rb