Sha256: 22b232b4f176d39eb3c1b3d3e444ecc869abe00331d9e25ee0e8d5179bc67dac
Contents?: true
Size: 709 Bytes
Versions: 20
Compression:
Stored size: 709 Bytes
Contents
# frozen_string_literal: true module FriendlyShipping module Services class Ups class ParseAddressClassificationResponse extend Dry::Monads::Result::Mixin def self.call(request:, response:) parsing_result = ParseXMLResponse.call(response.body, 'AddressValidationResponse') parsing_result.bind do |xml| address_type = xml.at('AddressClassification/Description')&.text&.downcase Success( FriendlyShipping::ApiResult.new( address_type, original_request: request, original_response: response ) ) end end end end end end
Version data entries
20 entries across 20 versions & 1 rubygems