Sha256: 99e15c0360c8894bf06610294eddfeb65b14fb7b6c462d6c7945c92c8c4e6a55

Contents?: true

Size: 831 Bytes

Versions: 9

Compression:

Stored size: 831 Bytes

Contents

module Shippo
  module Exceptions
    class APIError < ::Shippo::Exceptions::Error
      attr_accessor :request,
                    :response,
                    :http_response_message


      def initialize(message = nil,
                     request = nil,
                     response = nil)
        super(message)
        self.request  = request
        self.response = response
      end

      def to_s_members
        super + %i(server_url response)
      end

      def server_url
        @server_url ||= (request ? request.url : '')
      end
    end
  end
end


class Shippo::Exceptions::UnsuccessfulResponseError < Shippo::Exceptions::APIError;
end
class Shippo::Exceptions::InvalidCategoryValueError < Shippo::Exceptions::APIError;
end
class Shippo::Exceptions::InvalidJsonError < Shippo::Exceptions::APIError;
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
shippo-4.0.0 lib/shippo/exceptions/api_error.rb
shippo-3.1.0 lib/shippo/exceptions/api_error.rb
shippo-3.0.1 lib/shippo/exceptions/api_error.rb
shippo-3.0.0 lib/shippo/exceptions/api_error.rb
shippo-2.0.8 lib/shippo/exceptions/api_error.rb
shippo-2.0.7 lib/shippo/exceptions/api_error.rb
shippo-2.0.6 lib/shippo/exceptions/api_error.rb
shippo-2.0.5 lib/shippo/exceptions/api_error.rb
shippo-2.0.4 lib/shippo/exceptions/api_error.rb