class IngramMicro::CheckShipmentStatus

Constants

TRANSMISSION_FILENAME

Attributes

business_name[RW]
customer_id[RW]
line_items[RW]

Public Class Methods

new(options={}) click to toggle source
Calls superclass method IngramMicro::Transmission::new
# File lib/ingram_micro/transmissions/check_shipment_status.rb, line 6
def initialize(options={})
  super
  @transaction_name = 'shipment-status'
  @business_name = options[:business_name]
  @customer_id = options[:customer_id]
  @line_items = options[:line_items]
end

Public Instance Methods

add_message_header(builder) click to toggle source
# File lib/ingram_micro/transmissions/check_shipment_status.rb, line 24
def add_message_header(builder)
  message_header = IngramMicro::MessageHeaderNoPW.new({
    partner_name: IngramMicro.configuration.partner_name,
    transaction_name: transaction_name})
  builder.send('message-header') do
    message_header.build(builder)
  end
  message_header.valid?
end
add_shipment_status(builder) click to toggle source
# File lib/ingram_micro/transmissions/check_shipment_status.rb, line 34
def add_shipment_status(builder)
  options = {
    business_name: @business_name,
    customer_id: @customer_id,
    line_items: @line_items
  }
  ss = IngramMicro::ShipmentStatus.new(options)
  builder.send('shipment-status') do
    ss.build(builder)
  end
  ss.valid?
end
xml_builder() click to toggle source
# File lib/ingram_micro/transmissions/check_shipment_status.rb, line 14
def xml_builder
  @builder ||= Nokogiri::XML::Builder.new do |builder|
    builder.message do
      add_message_header(builder)
      add_shipment_status(builder)
      add_transaction_info(builder)
    end
  end
end