Class: Io::Flow::V0::Models::LabelUpserted

Inherits:
Event
  • Object
show all
Defined in:
lib/flow_commerce/flow_api_v0_client.rb

Instance Attribute Summary collapse

Attributes inherited from Event

#discriminator

Instance Method Summary collapse

Methods inherited from Event

from_json, #to_hash

Constructor Details

#initialize(incoming = {}) ⇒ LabelUpserted

Returns a new instance of LabelUpserted.



22690
22691
22692
22693
22694
22695
22696
22697
22698
22699
22700
22701
22702
22703
22704
22705
22706
22707
22708
22709
22710
22711
22712
22713
22714
22715
22716
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22690

def initialize(incoming={})
  super(:discriminator => Event::Types::LABEL_UPSERTED)
  opts = HttpClient::Helper.symbolize_keys(incoming)
  HttpClient::Preconditions.require_keys(opts, [:event_id, :timestamp, :organization, :label_id, :carrier_tracking_number, :commercial_invoice, :flow_tracking_number, :destination, :origin, :carrier, :service], 'LabelUpserted')
  @event_id = HttpClient::Preconditions.assert_class('event_id', opts.delete(:event_id), String)
  @timestamp = HttpClient::Preconditions.assert_class('timestamp', HttpClient::Helper.to_date_time_iso8601(opts.delete(:timestamp)), DateTime)
  @organization = HttpClient::Preconditions.assert_class('organization', opts.delete(:organization), String)
  @label_id = HttpClient::Preconditions.assert_class('label_id', opts.delete(:label_id), String)
  @carrier_tracking_number = HttpClient::Preconditions.assert_class('carrier_tracking_number', opts.delete(:carrier_tracking_number), String)
  @commercial_invoice = HttpClient::Preconditions.assert_class('commercial_invoice', opts.delete(:commercial_invoice), String)
  @flow_tracking_number = HttpClient::Preconditions.assert_class('flow_tracking_number', opts.delete(:flow_tracking_number), String)
  @destination = (x = opts.delete(:destination); x.is_a?(::Io::Flow::V0::Models::ShippingAddress) ? x : ::Io::Flow::V0::Models::ShippingAddress.new(x))
  @origin = (x = opts.delete(:origin); x.is_a?(::Io::Flow::V0::Models::ShippingAddress) ? x : ::Io::Flow::V0::Models::ShippingAddress.new(x))
  @carrier = HttpClient::Preconditions.assert_class('carrier', opts.delete(:carrier), String)
  @service = HttpClient::Preconditions.assert_class('service', opts.delete(:service), String)
  @zpl = (x = opts.delete(:zpl); x.nil? ? nil : HttpClient::Preconditions.assert_class('zpl', x, String))
  @pdf = (x = opts.delete(:pdf); x.nil? ? nil : HttpClient::Preconditions.assert_class('pdf', x, String))
  @png = (x = opts.delete(:png); x.nil? ? nil : HttpClient::Preconditions.assert_class('png', x, String))
  @order = (x = opts.delete(:order); x.nil? ? nil : HttpClient::Preconditions.assert_class('order', x, String))
  @carrier_tracking_number_url = (x = opts.delete(:carrier_tracking_number_url); x.nil? ? nil : HttpClient::Preconditions.assert_class('carrier_tracking_number_url', x, String))
  @flow_tracking_number_url = (x = opts.delete(:flow_tracking_number_url); x.nil? ? nil : HttpClient::Preconditions.assert_class('flow_tracking_number_url', x, String))
  @center_key = (x = opts.delete(:center_key); x.nil? ? nil : HttpClient::Preconditions.assert_class('center_key', x, String))
  @recipient = (x = opts.delete(:recipient); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::ShipmentRecipient) ? x : ::Io::Flow::V0::Models::ShipmentRecipient.apply(x)))
  @package = (x = opts.delete(:package); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::ShippingLabelPackage) ? x : ::Io::Flow::V0::Models::ShippingLabelPackage.new(x)))
  @order_identifier = (x = opts.delete(:order_identifier); x.nil? ? nil : HttpClient::Preconditions.assert_class('order_identifier', x, String))
  @fulfillment_key = (x = opts.delete(:fulfillment_key); x.nil? ? nil : HttpClient::Preconditions.assert_class('fulfillment_key', x, String))
end

Instance Attribute Details

#carrierObject (readonly)

Returns the value of attribute carrier.



22688
22689
22690
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22688

def carrier
  @carrier
end

#carrier_tracking_numberObject (readonly)

Returns the value of attribute carrier_tracking_number.



22688
22689
22690
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22688

def carrier_tracking_number
  @carrier_tracking_number
end

#carrier_tracking_number_urlObject (readonly)

Returns the value of attribute carrier_tracking_number_url.



22688
22689
22690
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22688

def carrier_tracking_number_url
  @carrier_tracking_number_url
end

#center_keyObject (readonly)

Returns the value of attribute center_key.



22688
22689
22690
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22688

def center_key
  @center_key
end

#commercial_invoiceObject (readonly)

Returns the value of attribute commercial_invoice.



22688
22689
22690
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22688

def commercial_invoice
  @commercial_invoice
end

#destinationObject (readonly)

Returns the value of attribute destination.



22688
22689
22690
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22688

def destination
  @destination
end

#event_idObject (readonly)

Returns the value of attribute event_id.



22688
22689
22690
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22688

def event_id
  @event_id
end

#flow_tracking_numberObject (readonly)

Returns the value of attribute flow_tracking_number.



22688
22689
22690
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22688

def flow_tracking_number
  @flow_tracking_number
end

#flow_tracking_number_urlObject (readonly)

Returns the value of attribute flow_tracking_number_url.



22688
22689
22690
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22688

def flow_tracking_number_url
  @flow_tracking_number_url
end

#fulfillment_keyObject (readonly)

Returns the value of attribute fulfillment_key.



22688
22689
22690
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22688

def fulfillment_key
  @fulfillment_key
end

#label_idObject (readonly)

Returns the value of attribute label_id.



22688
22689
22690
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22688

def label_id
  @label_id
end

#orderObject (readonly)

Returns the value of attribute order.



22688
22689
22690
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22688

def order
  @order
end

#order_identifierObject (readonly)

Returns the value of attribute order_identifier.



22688
22689
22690
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22688

def order_identifier
  @order_identifier
end

#organizationObject (readonly)

Returns the value of attribute organization.



22688
22689
22690
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22688

def organization
  @organization
end

#originObject (readonly)

Returns the value of attribute origin.



22688
22689
22690
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22688

def origin
  @origin
end

#packageObject (readonly)

Returns the value of attribute package.



22688
22689
22690
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22688

def package
  @package
end

#pdfObject (readonly)

Returns the value of attribute pdf.



22688
22689
22690
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22688

def pdf
  @pdf
end

#pngObject (readonly)

Returns the value of attribute png.



22688
22689
22690
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22688

def png
  @png
end

#recipientObject (readonly)

Returns the value of attribute recipient.



22688
22689
22690
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22688

def recipient
  @recipient
end

#serviceObject (readonly)

Returns the value of attribute service.



22688
22689
22690
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22688

def service
  @service
end

#timestampObject (readonly)

Returns the value of attribute timestamp.



22688
22689
22690
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22688

def timestamp
  @timestamp
end

#zplObject (readonly)

Returns the value of attribute zpl.



22688
22689
22690
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22688

def zpl
  @zpl
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



22722
22723
22724
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22722

def copy(incoming={})
  LabelUpserted.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
end

#subtype_to_hashObject



22726
22727
22728
22729
22730
22731
22732
22733
22734
22735
22736
22737
22738
22739
22740
22741
22742
22743
22744
22745
22746
22747
22748
22749
22750
22751
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22726

def subtype_to_hash
  {
    :event_id => event_id,
    :timestamp => timestamp,
    :organization => organization,
    :label_id => label_id,
    :carrier_tracking_number => carrier_tracking_number,
    :commercial_invoice => commercial_invoice,
    :flow_tracking_number => flow_tracking_number,
    :destination => destination.to_hash,
    :origin => origin.to_hash,
    :carrier => carrier,
    :service => service,
    :zpl => zpl,
    :pdf => pdf,
    :png => png,
    :order => order,
    :carrier_tracking_number_url => carrier_tracking_number_url,
    :flow_tracking_number_url => flow_tracking_number_url,
    :center_key => center_key,
    :recipient => recipient.nil? ? nil : recipient.value,
    :package => package.nil? ? nil : package.to_hash,
    :order_identifier => order_identifier,
    :fulfillment_key => fulfillment_key
  }
end

#to_jsonObject



22718
22719
22720
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22718

def to_json
  JSON.dump(to_hash)
end