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.



34860
34861
34862
34863
34864
34865
34866
34867
34868
34869
34870
34871
34872
34873
34874
34875
34876
34877
34878
34879
34880
34881
34882
34883
34884
34885
34886
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 34860

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.



34858
34859
34860
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 34858

def carrier
  @carrier
end

#carrier_tracking_numberObject (readonly)

Returns the value of attribute carrier_tracking_number.



34858
34859
34860
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 34858

def carrier_tracking_number
  @carrier_tracking_number
end

#carrier_tracking_number_urlObject (readonly)

Returns the value of attribute carrier_tracking_number_url.



34858
34859
34860
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 34858

def carrier_tracking_number_url
  @carrier_tracking_number_url
end

#center_keyObject (readonly)

Returns the value of attribute center_key.



34858
34859
34860
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 34858

def center_key
  @center_key
end

#commercial_invoiceObject (readonly)

Returns the value of attribute commercial_invoice.



34858
34859
34860
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 34858

def commercial_invoice
  @commercial_invoice
end

#destinationObject (readonly)

Returns the value of attribute destination.



34858
34859
34860
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 34858

def destination
  @destination
end

#event_idObject (readonly)

Returns the value of attribute event_id.



34858
34859
34860
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 34858

def event_id
  @event_id
end

#flow_tracking_numberObject (readonly)

Returns the value of attribute flow_tracking_number.



34858
34859
34860
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 34858

def flow_tracking_number
  @flow_tracking_number
end

#flow_tracking_number_urlObject (readonly)

Returns the value of attribute flow_tracking_number_url.



34858
34859
34860
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 34858

def flow_tracking_number_url
  @flow_tracking_number_url
end

#fulfillment_keyObject (readonly)

Returns the value of attribute fulfillment_key.



34858
34859
34860
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 34858

def fulfillment_key
  @fulfillment_key
end

#label_idObject (readonly)

Returns the value of attribute label_id.



34858
34859
34860
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 34858

def label_id
  @label_id
end

#orderObject (readonly)

Returns the value of attribute order.



34858
34859
34860
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 34858

def order
  @order
end

#order_identifierObject (readonly)

Returns the value of attribute order_identifier.



34858
34859
34860
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 34858

def order_identifier
  @order_identifier
end

#organizationObject (readonly)

Returns the value of attribute organization.



34858
34859
34860
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 34858

def organization
  @organization
end

#originObject (readonly)

Returns the value of attribute origin.



34858
34859
34860
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 34858

def origin
  @origin
end

#packageObject (readonly)

Returns the value of attribute package.



34858
34859
34860
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 34858

def package
  @package
end

#pdfObject (readonly)

Returns the value of attribute pdf.



34858
34859
34860
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 34858

def pdf
  @pdf
end

#pngObject (readonly)

Returns the value of attribute png.



34858
34859
34860
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 34858

def png
  @png
end

#recipientObject (readonly)

Returns the value of attribute recipient.



34858
34859
34860
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 34858

def recipient
  @recipient
end

#serviceObject (readonly)

Returns the value of attribute service.



34858
34859
34860
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 34858

def service
  @service
end

#timestampObject (readonly)

Returns the value of attribute timestamp.



34858
34859
34860
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 34858

def timestamp
  @timestamp
end

#zplObject (readonly)

Returns the value of attribute zpl.



34858
34859
34860
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 34858

def zpl
  @zpl
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



34892
34893
34894
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 34892

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

#subtype_to_hashObject



34896
34897
34898
34899
34900
34901
34902
34903
34904
34905
34906
34907
34908
34909
34910
34911
34912
34913
34914
34915
34916
34917
34918
34919
34920
34921
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 34896

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



34888
34889
34890
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 34888

def to_json
  JSON.dump(to_hash)
end