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.
54438 54439 54440 54441 54442 54443 54444 54445 54446 54447 54448 54449 54450 54451 54452 54453 54454 54455 54456 54457 54458 54459 54460 54461 54462 54463 54464 54465 54466 54467 54468 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 54438 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.
54436 54437 54438 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 54436 def attributes @attributes end |
#created_at ⇒ Object (readonly)
Returns the value of attribute created_at.
54436 54437 54438 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 54436 def created_at @created_at end |
#customer ⇒ Object (readonly)
Returns the value of attribute customer.
54436 54437 54438 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 54436 def customer @customer end |
#delivered_duty ⇒ Object (readonly)
Returns the value of attribute delivered_duty.
54436 54437 54438 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 54436 def delivered_duty @delivered_duty end |
#deliveries ⇒ Object (readonly)
Returns the value of attribute deliveries.
54436 54437 54438 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 54436 def deliveries @deliveries end |
#destination ⇒ Object (readonly)
Returns the value of attribute destination.
54436 54437 54438 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 54436 def destination @destination end |
#discount ⇒ Object (readonly)
Returns the value of attribute discount.
54436 54437 54438 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 54436 def discount @discount end |
#environment ⇒ Object (readonly)
Returns the value of attribute environment.
54436 54437 54438 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 54436 def environment @environment end |
#event_id ⇒ Object (readonly)
Returns the value of attribute event_id.
54436 54437 54438 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 54436 def event_id @event_id end |
#experience_id ⇒ Object (readonly)
Returns the value of attribute experience_id.
54436 54437 54438 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 54436 def experience_id @experience_id end |
#expires_at ⇒ Object (readonly)
Returns the value of attribute expires_at.
54436 54437 54438 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 54436 def expires_at @expires_at end |
#geo ⇒ Object (readonly)
Returns the value of attribute geo.
54436 54437 54438 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 54436 def geo @geo end |
#items ⇒ Object (readonly)
Returns the value of attribute items.
54436 54437 54438 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 54436 def items @items end |
#lines ⇒ Object (readonly)
Returns the value of attribute lines.
54436 54437 54438 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 54436 def lines @lines end |
#merchant_of_record ⇒ Object (readonly)
Returns the value of attribute merchant_of_record.
54436 54437 54438 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 54436 def merchant_of_record @merchant_of_record end |
#number ⇒ Object (readonly)
Returns the value of attribute number.
54436 54437 54438 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 54436 def number @number end |
#order_id ⇒ Object (readonly)
Returns the value of attribute order_id.
54436 54437 54438 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 54436 def order_id @order_id end |
#organization ⇒ Object (readonly)
Returns the value of attribute organization.
54436 54437 54438 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 54436 def organization @organization end |
#payments ⇒ Object (readonly)
Returns the value of attribute payments.
54436 54437 54438 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 54436 def payments @payments end |
#prices ⇒ Object (readonly)
Returns the value of attribute prices.
54436 54437 54438 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 54436 def prices @prices end |
#selections ⇒ Object (readonly)
Returns the value of attribute selections.
54436 54437 54438 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 54436 def selections @selections end |
#submitted_at ⇒ Object (readonly)
Returns the value of attribute submitted_at.
54436 54437 54438 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 54436 def submitted_at @submitted_at end |
#tax_registration ⇒ Object (readonly)
Returns the value of attribute tax_registration.
54436 54437 54438 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 54436 def tax_registration @tax_registration end |
#timestamp ⇒ Object (readonly)
Returns the value of attribute timestamp.
54436 54437 54438 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 54436 def @timestamp end |
#total ⇒ Object (readonly)
Returns the value of attribute total.
54436 54437 54438 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 54436 def total @total end |
#updated_at ⇒ Object (readonly)
Returns the value of attribute updated_at.
54436 54437 54438 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 54436 def updated_at @updated_at end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
54474 54475 54476 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 54474 def copy(incoming={}) OrderUpserted.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#subtype_to_hash ⇒ Object
54478 54479 54480 54481 54482 54483 54484 54485 54486 54487 54488 54489 54490 54491 54492 54493 54494 54495 54496 54497 54498 54499 54500 54501 54502 54503 54504 54505 54506 54507 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 54478 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
54470 54471 54472 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 54470 def to_json JSON.dump(to_hash) end |