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.



37247
37248
37249
37250
37251
37252
37253
37254
37255
37256
37257
37258
37259
37260
37261
37262
37263
37264
37265
37266
37267
37268
37269
37270
37271
37272
37273
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37247

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.



37245
37246
37247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37245

def carrier
  @carrier
end

#carrier_tracking_numberObject (readonly)

Returns the value of attribute carrier_tracking_number.



37245
37246
37247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37245

def carrier_tracking_number
  @carrier_tracking_number
end

#carrier_tracking_number_urlObject (readonly)

Returns the value of attribute carrier_tracking_number_url.



37245
37246
37247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37245

def carrier_tracking_number_url
  @carrier_tracking_number_url
end

#center_keyObject (readonly)

Returns the value of attribute center_key.



37245
37246
37247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37245

def center_key
  @center_key
end

#commercial_invoiceObject (readonly)

Returns the value of attribute commercial_invoice.



37245
37246
37247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37245

def commercial_invoice
  @commercial_invoice
end

#destinationObject (readonly)

Returns the value of attribute destination.



37245
37246
37247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37245

def destination
  @destination
end

#event_idObject (readonly)

Returns the value of attribute event_id.



37245
37246
37247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37245

def event_id
  @event_id
end

#flow_tracking_numberObject (readonly)

Returns the value of attribute flow_tracking_number.



37245
37246
37247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37245

def flow_tracking_number
  @flow_tracking_number
end

#flow_tracking_number_urlObject (readonly)

Returns the value of attribute flow_tracking_number_url.



37245
37246
37247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37245

def flow_tracking_number_url
  @flow_tracking_number_url
end

#fulfillment_keyObject (readonly)

Returns the value of attribute fulfillment_key.



37245
37246
37247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37245

def fulfillment_key
  @fulfillment_key
end

#label_idObject (readonly)

Returns the value of attribute label_id.



37245
37246
37247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37245

def label_id
  @label_id
end

#orderObject (readonly)

Returns the value of attribute order.



37245
37246
37247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37245

def order
  @order
end

#order_identifierObject (readonly)

Returns the value of attribute order_identifier.



37245
37246
37247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37245

def order_identifier
  @order_identifier
end

#organizationObject (readonly)

Returns the value of attribute organization.



37245
37246
37247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37245

def organization
  @organization
end

#originObject (readonly)

Returns the value of attribute origin.



37245
37246
37247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37245

def origin
  @origin
end

#packageObject (readonly)

Returns the value of attribute package.



37245
37246
37247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37245

def package
  @package
end

#pdfObject (readonly)

Returns the value of attribute pdf.



37245
37246
37247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37245

def pdf
  @pdf
end

#pngObject (readonly)

Returns the value of attribute png.



37245
37246
37247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37245

def png
  @png
end

#recipientObject (readonly)

Returns the value of attribute recipient.



37245
37246
37247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37245

def recipient
  @recipient
end

#serviceObject (readonly)

Returns the value of attribute service.



37245
37246
37247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37245

def service
  @service
end

#timestampObject (readonly)

Returns the value of attribute timestamp.



37245
37246
37247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37245

def timestamp
  @timestamp
end

#zplObject (readonly)

Returns the value of attribute zpl.



37245
37246
37247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37245

def zpl
  @zpl
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



37279
37280
37281
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37279

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

#subtype_to_hashObject



37283
37284
37285
37286
37287
37288
37289
37290
37291
37292
37293
37294
37295
37296
37297
37298
37299
37300
37301
37302
37303
37304
37305
37306
37307
37308
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37283

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



37275
37276
37277
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 37275

def to_json
  JSON.dump(to_hash)
end