class EbayClient::Response::Error

Attributes

errors[RW]
classification[R]
code[R]
long_message[R]
parameters[R]
severity_code[R]
short_message[R]

Public Class Methods

new(values) click to toggle source
# File lib/ebay_client/response.rb, line 16
def initialize(values)
  @classification = values[:error_classification]
  @code = values[:error_code]
  @parameters = get_parameters values[:error_parameters] || []
  @long_message = values[:long_message]
  @short_message = values[:short_message]
  @severity_code = values[:severity_code]
end

Protected Class Methods

for_code(code) click to toggle source
# File lib/ebay_client/response.rb, line 50
def for_code(code)
  self.errors ||= Hash.new do |h, k|
    h[k] = ::EbayClient::Response::Exception.new.tap do |exception|
      exception.code = k
    end
  end

  errors[code.to_s]
end

Public Instance Methods

to_s() click to toggle source
# File lib/ebay_client/response.rb, line 25
    def to_s
      <<-END
        #{short_message} - #{code}

        #{long_message}
      END
    end

Protected Instance Methods

get_parameters(values) click to toggle source
# File lib/ebay_client/response.rb, line 34
def get_parameters(values)
  values = [values] if values.is_a? Hash

  {}.tap do |hash|
    values.each do |vals|
      key = vals[:@param_id] rescue next
      val = vals[:value] or next

      hash[key] = val
    end
  end
end