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.



27994
27995
27996
27997
27998
27999
28000
28001
28002
28003
28004
28005
28006
28007
28008
28009
28010
28011
28012
28013
28014
28015
28016
28017
28018
28019
28020
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 27994

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.



27992
27993
27994
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 27992

def carrier
  @carrier
end

#carrier_tracking_numberObject (readonly)

Returns the value of attribute carrier_tracking_number.



27992
27993
27994
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 27992

def carrier_tracking_number
  @carrier_tracking_number
end

#carrier_tracking_number_urlObject (readonly)

Returns the value of attribute carrier_tracking_number_url.



27992
27993
27994
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 27992

def carrier_tracking_number_url
  @carrier_tracking_number_url
end

#center_keyObject (readonly)

Returns the value of attribute center_key.



27992
27993
27994
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 27992

def center_key
  @center_key
end

#commercial_invoiceObject (readonly)

Returns the value of attribute commercial_invoice.



27992
27993
27994
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 27992

def commercial_invoice
  @commercial_invoice
end

#destinationObject (readonly)

Returns the value of attribute destination.



27992
27993
27994
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 27992

def destination
  @destination
end

#event_idObject (readonly)

Returns the value of attribute event_id.



27992
27993
27994
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 27992

def event_id
  @event_id
end

#flow_tracking_numberObject (readonly)

Returns the value of attribute flow_tracking_number.



27992
27993
27994
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 27992

def flow_tracking_number
  @flow_tracking_number
end

#flow_tracking_number_urlObject (readonly)

Returns the value of attribute flow_tracking_number_url.



27992
27993
27994
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 27992

def flow_tracking_number_url
  @flow_tracking_number_url
end

#fulfillment_keyObject (readonly)

Returns the value of attribute fulfillment_key.



27992
27993
27994
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 27992

def fulfillment_key
  @fulfillment_key
end

#label_idObject (readonly)

Returns the value of attribute label_id.



27992
27993
27994
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 27992

def label_id
  @label_id
end

#orderObject (readonly)

Returns the value of attribute order.



27992
27993
27994
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 27992

def order
  @order
end

#order_identifierObject (readonly)

Returns the value of attribute order_identifier.



27992
27993
27994
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 27992

def order_identifier
  @order_identifier
end

#organizationObject (readonly)

Returns the value of attribute organization.



27992
27993
27994
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 27992

def organization
  @organization
end

#originObject (readonly)

Returns the value of attribute origin.



27992
27993
27994
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 27992

def origin
  @origin
end

#packageObject (readonly)

Returns the value of attribute package.



27992
27993
27994
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 27992

def package
  @package
end

#pdfObject (readonly)

Returns the value of attribute pdf.



27992
27993
27994
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 27992

def pdf
  @pdf
end

#pngObject (readonly)

Returns the value of attribute png.



27992
27993
27994
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 27992

def png
  @png
end

#recipientObject (readonly)

Returns the value of attribute recipient.



27992
27993
27994
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 27992

def recipient
  @recipient
end

#serviceObject (readonly)

Returns the value of attribute service.



27992
27993
27994
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 27992

def service
  @service
end

#timestampObject (readonly)

Returns the value of attribute timestamp.



27992
27993
27994
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 27992

def timestamp
  @timestamp
end

#zplObject (readonly)

Returns the value of attribute zpl.



27992
27993
27994
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 27992

def zpl
  @zpl
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



28026
28027
28028
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28026

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

#subtype_to_hashObject



28030
28031
28032
28033
28034
28035
28036
28037
28038
28039
28040
28041
28042
28043
28044
28045
28046
28047
28048
28049
28050
28051
28052
28053
28054
28055
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28030

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



28022
28023
28024
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28022

def to_json
  JSON.dump(to_hash)
end