Class: EbayRequest::Response

Inherits:
Object
  • Object
show all
Extended by:
Dry::Initializer
Defined in:
lib/ebay_request/response.rb

Instance Method Summary collapse

Instance Method Details

#data!Object



15
16
17
18
# File 'lib/ebay_request/response.rb', line 15

def data!
  raise error unless success?
  data
end

#errorObject



37
38
39
# File 'lib/ebay_request/response.rb', line 37

def error
  error_class.new(errors.values.join(", "), errors)
end

#error_classObject



32
33
34
35
# File 'lib/ebay_request/response.rb', line 32

def error_class
  fatal_code = (errors.keys.map(&:to_i) & fatal_errors.keys).first
  fatal_errors[fatal_code] || EbayRequest::Error
end

#errorsObject



20
21
22
# File 'lib/ebay_request/response.rb', line 20

def errors
  severity("Error")
end

#severity(severity) ⇒ Object



28
29
30
# File 'lib/ebay_request/response.rb', line 28

def severity(severity)
  Hash[errors_data.map { |s, c, m| [c.to_i, m] if s == severity }.compact]
end

#success?Boolean

Returns:

  • (Boolean)


10
11
12
13
# File 'lib/ebay_request/response.rb', line 10

def success?
  ack = data["ack"] || data["Ack"]
  %w(Success Warning).include?(ack)
end

#warningsObject



24
25
26
# File 'lib/ebay_request/response.rb', line 24

def warnings
  severity("Warning")
end