Class: AuctionInc::Shipping::Xs

Inherits:
Base
  • Object
show all
Defined in:
lib/auction_inc/shipping/xs.rb

Instance Attribute Summary collapse

Attributes inherited from Base

#response

Instance Method Summary collapse

Methods inherited from Base

carriers, #currency, #dimension_unit, entry_points, load_carriers, #make_request, #parsed_response, services, #valid_response?, #weight_unit

Instance Attribute Details

#destination_addressObject

Returns the value of attribute destination_address.



4
5
6
# File 'lib/auction_inc/shipping/xs.rb', line 4

def destination_address
  @destination_address
end

#itemsObject

Returns the value of attribute items.



4
5
6
# File 'lib/auction_inc/shipping/xs.rb', line 4

def items
  @items
end

#origin_addressesObject

Returns the value of attribute origin_addresses.



4
5
6
# File 'lib/auction_inc/shipping/xs.rb', line 4

def origin_addresses
  @origin_addresses
end

Instance Method Details

#bodyObject



20
21
22
# File 'lib/auction_inc/shipping/xs.rb', line 20

def body
  Body.new(:get_item_ship_rate_x_s => self.content)
end

#contentObject



24
25
26
27
28
29
30
31
32
33
34
# File 'lib/auction_inc/shipping/xs.rb', line 24

def content
  content = GetItemShipRateXs.new
  content.version = self.class.api_version
  content.detail_level = self.class.detail_level
  content.currency = self.currency
  content.carriers = self.class.carriers
  content.origin_addresses = origin_addresses unless origin_addresses.blank?
  content.destination_address = destination_address unless destination_address.blank?
  content.items = items unless items.blank?
  content
end

#envelopeObject



12
13
14
# File 'lib/auction_inc/shipping/xs.rb', line 12

def envelope
  Envelope.new(:header => self.header, :body => self.body)
end

#headerObject



16
17
18
# File 'lib/auction_inc/shipping/xs.rb', line 16

def header
  Header.new(:account_id => self.class.license_key)
end

#request_xmlObject



6
7
8
9
10
# File 'lib/auction_inc/shipping/xs.rb', line 6

def request_xml
  doc = Nokogiri::XML::Document.new
  doc.root = self.envelope.to_xml
  doc.to_s
end