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.



42767
42768
42769
42770
42771
42772
42773
42774
42775
42776
42777
42778
42779
42780
42781
42782
42783
42784
42785
42786
42787
42788
42789
42790
42791
42792
42793
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42767

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.



42765
42766
42767
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42765

def carrier
  @carrier
end

#carrier_tracking_numberObject (readonly)

Returns the value of attribute carrier_tracking_number.



42765
42766
42767
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42765

def carrier_tracking_number
  @carrier_tracking_number
end

#carrier_tracking_number_urlObject (readonly)

Returns the value of attribute carrier_tracking_number_url.



42765
42766
42767
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42765

def carrier_tracking_number_url
  @carrier_tracking_number_url
end

#center_keyObject (readonly)

Returns the value of attribute center_key.



42765
42766
42767
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42765

def center_key
  @center_key
end

#commercial_invoiceObject (readonly)

Returns the value of attribute commercial_invoice.



42765
42766
42767
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42765

def commercial_invoice
  @commercial_invoice
end

#destinationObject (readonly)

Returns the value of attribute destination.



42765
42766
42767
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42765

def destination
  @destination
end

#event_idObject (readonly)

Returns the value of attribute event_id.



42765
42766
42767
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42765

def event_id
  @event_id
end

#flow_tracking_numberObject (readonly)

Returns the value of attribute flow_tracking_number.



42765
42766
42767
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42765

def flow_tracking_number
  @flow_tracking_number
end

#flow_tracking_number_urlObject (readonly)

Returns the value of attribute flow_tracking_number_url.



42765
42766
42767
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42765

def flow_tracking_number_url
  @flow_tracking_number_url
end

#fulfillment_keyObject (readonly)

Returns the value of attribute fulfillment_key.



42765
42766
42767
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42765

def fulfillment_key
  @fulfillment_key
end

#label_idObject (readonly)

Returns the value of attribute label_id.



42765
42766
42767
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42765

def label_id
  @label_id
end

#orderObject (readonly)

Returns the value of attribute order.



42765
42766
42767
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42765

def order
  @order
end

#order_identifierObject (readonly)

Returns the value of attribute order_identifier.



42765
42766
42767
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42765

def order_identifier
  @order_identifier
end

#organizationObject (readonly)

Returns the value of attribute organization.



42765
42766
42767
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42765

def organization
  @organization
end

#originObject (readonly)

Returns the value of attribute origin.



42765
42766
42767
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42765

def origin
  @origin
end

#packageObject (readonly)

Returns the value of attribute package.



42765
42766
42767
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42765

def package
  @package
end

#pdfObject (readonly)

Returns the value of attribute pdf.



42765
42766
42767
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42765

def pdf
  @pdf
end

#pngObject (readonly)

Returns the value of attribute png.



42765
42766
42767
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42765

def png
  @png
end

#recipientObject (readonly)

Returns the value of attribute recipient.



42765
42766
42767
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42765

def recipient
  @recipient
end

#serviceObject (readonly)

Returns the value of attribute service.



42765
42766
42767
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42765

def service
  @service
end

#timestampObject (readonly)

Returns the value of attribute timestamp.



42765
42766
42767
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42765

def timestamp
  @timestamp
end

#zplObject (readonly)

Returns the value of attribute zpl.



42765
42766
42767
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42765

def zpl
  @zpl
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



42799
42800
42801
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42799

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

#subtype_to_hashObject



42803
42804
42805
42806
42807
42808
42809
42810
42811
42812
42813
42814
42815
42816
42817
42818
42819
42820
42821
42822
42823
42824
42825
42826
42827
42828
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42803

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



42795
42796
42797
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42795

def to_json
  JSON.dump(to_hash)
end