Class: Io::Flow::V0::Models::OrderUpserted
- Defined in:
- lib/flow_commerce/flow_api_v0_client.rb
Instance Attribute Summary collapse
-
#attributes ⇒ Object
readonly
Returns the value of attribute attributes.
-
#created_at ⇒ Object
readonly
Returns the value of attribute created_at.
-
#customer ⇒ Object
readonly
Returns the value of attribute customer.
-
#delivered_duty ⇒ Object
readonly
Returns the value of attribute delivered_duty.
-
#deliveries ⇒ Object
readonly
Returns the value of attribute deliveries.
-
#destination ⇒ Object
readonly
Returns the value of attribute destination.
-
#discount ⇒ Object
readonly
Returns the value of attribute discount.
-
#environment ⇒ Object
readonly
Returns the value of attribute environment.
-
#event_id ⇒ Object
readonly
Returns the value of attribute event_id.
-
#experience_id ⇒ Object
readonly
Returns the value of attribute experience_id.
-
#expires_at ⇒ Object
readonly
Returns the value of attribute expires_at.
-
#geo ⇒ Object
readonly
Returns the value of attribute geo.
-
#items ⇒ Object
readonly
Returns the value of attribute items.
-
#lines ⇒ Object
readonly
Returns the value of attribute lines.
-
#merchant_of_record ⇒ Object
readonly
Returns the value of attribute merchant_of_record.
-
#number ⇒ Object
readonly
Returns the value of attribute number.
-
#order_id ⇒ Object
readonly
Returns the value of attribute order_id.
-
#organization ⇒ Object
readonly
Returns the value of attribute organization.
-
#payments ⇒ Object
readonly
Returns the value of attribute payments.
-
#prices ⇒ Object
readonly
Returns the value of attribute prices.
-
#selections ⇒ Object
readonly
Returns the value of attribute selections.
-
#submitted_at ⇒ Object
readonly
Returns the value of attribute submitted_at.
-
#tax_registration ⇒ Object
readonly
Returns the value of attribute tax_registration.
-
#timestamp ⇒ Object
readonly
Returns the value of attribute timestamp.
-
#total ⇒ Object
readonly
Returns the value of attribute total.
-
#updated_at ⇒ Object
readonly
Returns the value of attribute updated_at.
Attributes inherited from Event
Instance Method Summary collapse
- #copy(incoming = {}) ⇒ Object
-
#initialize(incoming = {}) ⇒ OrderUpserted
constructor
A new instance of OrderUpserted.
- #subtype_to_hash ⇒ Object
- #to_json ⇒ Object
Methods inherited from Event
Constructor Details
#initialize(incoming = {}) ⇒ OrderUpserted
Returns a new instance of OrderUpserted.
42324 42325 42326 42327 42328 42329 42330 42331 42332 42333 42334 42335 42336 42337 42338 42339 42340 42341 42342 42343 42344 42345 42346 42347 42348 42349 42350 42351 42352 42353 42354 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42324 def initialize(incoming={}) super(:discriminator => Event::Types::ORDER_UPSERTED) opts = HttpClient::Helper.symbolize_keys(incoming) HttpClient::Preconditions.require_keys(opts, [:event_id, :timestamp, :organization, :number, :environment, :experience_id, :expires_at, :customer, :selections, :items, :destination, :deliveries, :prices, :total], 'OrderUpserted') @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) @number = HttpClient::Preconditions.assert_class('number', opts.delete(:number), String) @environment = HttpClient::Preconditions.assert_class('environment', opts.delete(:environment), String) @experience_id = HttpClient::Preconditions.assert_class('experience_id', opts.delete(:experience_id), String) @expires_at = HttpClient::Preconditions.assert_class('expires_at', HttpClient::Helper.to_date_time_iso8601(opts.delete(:expires_at)), DateTime) @customer = (x = opts.delete(:customer); x.is_a?(::Io::Flow::V0::Models::OrderCustomer) ? x : ::Io::Flow::V0::Models::OrderCustomer.new(x)) @selections = HttpClient::Preconditions.assert_class('selections', opts.delete(:selections), Array).map { |v| HttpClient::Preconditions.assert_class('selections', v, String) } @items = HttpClient::Preconditions.assert_class('items', opts.delete(:items), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::LocalizedLineItem) ? x : ::Io::Flow::V0::Models::LocalizedLineItem.new(x)) } @destination = (x = opts.delete(:destination); x.is_a?(::Io::Flow::V0::Models::OrderAddress) ? x : ::Io::Flow::V0::Models::OrderAddress.new(x)) @deliveries = HttpClient::Preconditions.assert_class('deliveries', opts.delete(:deliveries), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::Delivery) ? x : ::Io::Flow::V0::Models::Delivery.from_json(x)) } @prices = HttpClient::Preconditions.assert_class('prices', opts.delete(:prices), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::OrderPriceDetail) ? x : ::Io::Flow::V0::Models::OrderPriceDetail.new(x)) } @order_id = (x = opts.delete(:order_id); x.nil? ? nil : HttpClient::Preconditions.assert_class('order_id', x, String)) @payments = (x = opts.delete(:payments); x.nil? ? nil : HttpClient::Preconditions.assert_class('payments', x, Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::OrderPayment) ? x : ::Io::Flow::V0::Models::OrderPayment.new(x)) }) @discount = (x = opts.delete(:discount); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::Money) ? x : ::Io::Flow::V0::Models::Money.new(x))) @delivered_duty = (x = opts.delete(:delivered_duty); x.nil? ? nil : HttpClient::Preconditions.assert_class('delivered_duty', x, String)) @total = (x = opts.delete(:total); x.is_a?(::Io::Flow::V0::Models::LocalizedTotal) ? x : ::Io::Flow::V0::Models::LocalizedTotal.new(x)) @created_at = (x = opts.delete(:created_at); x.nil? ? nil : HttpClient::Preconditions.assert_class('created_at', HttpClient::Helper.to_date_time_iso8601(x), DateTime)) @updated_at = (x = opts.delete(:updated_at); x.nil? ? nil : HttpClient::Preconditions.assert_class('updated_at', HttpClient::Helper.to_date_time_iso8601(x), DateTime)) @submitted_at = (x = opts.delete(:submitted_at); x.nil? ? nil : HttpClient::Preconditions.assert_class('submitted_at', HttpClient::Helper.to_date_time_iso8601(x), DateTime)) @lines = (x = opts.delete(:lines); x.nil? ? nil : HttpClient::Preconditions.assert_class('lines', x, Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::Line) ? x : ::Io::Flow::V0::Models::Line.new(x)) }) @attributes = (x = opts.delete(:attributes); x.nil? ? nil : HttpClient::Preconditions.assert_class('attributes', x, Hash).inject({}) { |h, d| h[d[0]] = HttpClient::Preconditions.assert_class('attributes', d[1], String); h }) @geo = (x = opts.delete(:geo); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::OrderGeo) ? x : ::Io::Flow::V0::Models::OrderGeo.new(x))) @merchant_of_record = (x = opts.delete(:merchant_of_record); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::OrderMerchantOfRecord) ? x : ::Io::Flow::V0::Models::OrderMerchantOfRecord.apply(x))) @tax_registration = (x = opts.delete(:tax_registration); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::TaxRegistration) ? x : ::Io::Flow::V0::Models::TaxRegistration.new(x))) end |
Instance Attribute Details
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
42322 42323 42324 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42322 def attributes @attributes end |
#created_at ⇒ Object (readonly)
Returns the value of attribute created_at.
42322 42323 42324 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42322 def created_at @created_at end |
#customer ⇒ Object (readonly)
Returns the value of attribute customer.
42322 42323 42324 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42322 def customer @customer end |
#delivered_duty ⇒ Object (readonly)
Returns the value of attribute delivered_duty.
42322 42323 42324 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42322 def delivered_duty @delivered_duty end |
#deliveries ⇒ Object (readonly)
Returns the value of attribute deliveries.
42322 42323 42324 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42322 def deliveries @deliveries end |
#destination ⇒ Object (readonly)
Returns the value of attribute destination.
42322 42323 42324 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42322 def destination @destination end |
#discount ⇒ Object (readonly)
Returns the value of attribute discount.
42322 42323 42324 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42322 def discount @discount end |
#environment ⇒ Object (readonly)
Returns the value of attribute environment.
42322 42323 42324 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42322 def environment @environment end |
#event_id ⇒ Object (readonly)
Returns the value of attribute event_id.
42322 42323 42324 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42322 def event_id @event_id end |
#experience_id ⇒ Object (readonly)
Returns the value of attribute experience_id.
42322 42323 42324 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42322 def experience_id @experience_id end |
#expires_at ⇒ Object (readonly)
Returns the value of attribute expires_at.
42322 42323 42324 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42322 def expires_at @expires_at end |
#geo ⇒ Object (readonly)
Returns the value of attribute geo.
42322 42323 42324 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42322 def geo @geo end |
#items ⇒ Object (readonly)
Returns the value of attribute items.
42322 42323 42324 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42322 def items @items end |
#lines ⇒ Object (readonly)
Returns the value of attribute lines.
42322 42323 42324 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42322 def lines @lines end |
#merchant_of_record ⇒ Object (readonly)
Returns the value of attribute merchant_of_record.
42322 42323 42324 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42322 def merchant_of_record @merchant_of_record end |
#number ⇒ Object (readonly)
Returns the value of attribute number.
42322 42323 42324 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42322 def number @number end |
#order_id ⇒ Object (readonly)
Returns the value of attribute order_id.
42322 42323 42324 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42322 def order_id @order_id end |
#organization ⇒ Object (readonly)
Returns the value of attribute organization.
42322 42323 42324 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42322 def organization @organization end |
#payments ⇒ Object (readonly)
Returns the value of attribute payments.
42322 42323 42324 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42322 def payments @payments end |
#prices ⇒ Object (readonly)
Returns the value of attribute prices.
42322 42323 42324 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42322 def prices @prices end |
#selections ⇒ Object (readonly)
Returns the value of attribute selections.
42322 42323 42324 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42322 def selections @selections end |
#submitted_at ⇒ Object (readonly)
Returns the value of attribute submitted_at.
42322 42323 42324 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42322 def submitted_at @submitted_at end |
#tax_registration ⇒ Object (readonly)
Returns the value of attribute tax_registration.
42322 42323 42324 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42322 def tax_registration @tax_registration end |
#timestamp ⇒ Object (readonly)
Returns the value of attribute timestamp.
42322 42323 42324 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42322 def @timestamp end |
#total ⇒ Object (readonly)
Returns the value of attribute total.
42322 42323 42324 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42322 def total @total end |
#updated_at ⇒ Object (readonly)
Returns the value of attribute updated_at.
42322 42323 42324 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42322 def updated_at @updated_at end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
42360 42361 42362 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42360 def copy(incoming={}) OrderUpserted.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#subtype_to_hash ⇒ Object
42364 42365 42366 42367 42368 42369 42370 42371 42372 42373 42374 42375 42376 42377 42378 42379 42380 42381 42382 42383 42384 42385 42386 42387 42388 42389 42390 42391 42392 42393 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42364 def subtype_to_hash { :event_id => event_id, :timestamp => , :organization => organization, :number => number, :environment => environment, :experience_id => experience_id, :expires_at => expires_at, :customer => customer.to_hash, :selections => selections, :items => items.map { |o| o.to_hash }, :destination => destination.to_hash, :deliveries => deliveries.map { |o| o.to_hash }, :prices => prices.map { |o| o.to_hash }, :order_id => order_id, :payments => payments.nil? ? nil : payments.map { |o| o.to_hash }, :discount => discount.nil? ? nil : discount.to_hash, :delivered_duty => delivered_duty, :total => total.to_hash, :created_at => created_at, :updated_at => updated_at, :submitted_at => submitted_at, :lines => lines.nil? ? nil : lines.map { |o| o.to_hash }, :attributes => attributes.nil? ? nil : attributes, :geo => geo.nil? ? nil : geo.to_hash, :merchant_of_record => merchant_of_record.nil? ? nil : merchant_of_record.value, :tax_registration => tax_registration.nil? ? nil : tax_registration.to_hash } end |
#to_json ⇒ Object
42356 42357 42358 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 42356 def to_json JSON.dump(to_hash) end |