class Honey::Response

Attributes

data[RW]

Public Class Methods

new(http_response) click to toggle source
# File lib/honey/response.rb, line 7
def initialize(http_response)
  data = http_response.parsed_response['HPEnvelope']
  @data = OpenStruct.new(data)
end

Public Instance Methods

cancelled?() click to toggle source
# File lib/honey/response.rb, line 32
def cancelled?
  data.cancelled == 'Yes'
end
error() click to toggle source
# File lib/honey/response.rb, line 40
def error
  Honey::Error.new(data.code.to_i)
end
failed?() click to toggle source
# File lib/honey/response.rb, line 28
def failed?
  data.code.present? && data.code.to_i != 100
end
inspect() click to toggle source
# File lib/honey/response.rb, line 20
def inspect
  data.inspect
end
log() click to toggle source
# File lib/honey/response.rb, line 44
def log
  "[#{data.code}] #{message}"
end
message() click to toggle source
# File lib/honey/response.rb, line 48
def message
  data.error || data.details
end
method_missing(method, *args, &block) click to toggle source
# File lib/honey/response.rb, line 12
def method_missing(method, *args, &block)
  if method.to_s.end_with?('=')
    data.send(method, *args)
  else
    data.send(method)
  end
end
notes() click to toggle source
# File lib/honey/response.rb, line 56
def notes
  data.warehousenotes || ""
end
shipped?() click to toggle source
# File lib/honey/response.rb, line 36
def shipped?
  data.status == 'Shipped'
end
successful?() click to toggle source
# File lib/honey/response.rb, line 24
def successful?
  !failed?
end
tracking_numbers() click to toggle source
# File lib/honey/response.rb, line 52
def tracking_numbers
  (1..5).map { |i| data.try(:"trackingnumber#{i}") }.compact.join(',')
end