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.
41738 41739 41740 41741 41742 41743 41744 41745 41746 41747 41748 41749 41750 41751 41752 41753 41754 41755 41756 41757 41758 41759 41760 41761 41762 41763 41764 41765 41766 41767 41768 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 41738 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.
41736 41737 41738 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 41736 def attributes @attributes end |
#created_at ⇒ Object (readonly)
Returns the value of attribute created_at.
41736 41737 41738 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 41736 def created_at @created_at end |
#customer ⇒ Object (readonly)
Returns the value of attribute customer.
41736 41737 41738 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 41736 def customer @customer end |
#delivered_duty ⇒ Object (readonly)
Returns the value of attribute delivered_duty.
41736 41737 41738 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 41736 def delivered_duty @delivered_duty end |
#deliveries ⇒ Object (readonly)
Returns the value of attribute deliveries.
41736 41737 41738 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 41736 def deliveries @deliveries end |
#destination ⇒ Object (readonly)
Returns the value of attribute destination.
41736 41737 41738 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 41736 def destination @destination end |
#discount ⇒ Object (readonly)
Returns the value of attribute discount.
41736 41737 41738 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 41736 def discount @discount end |
#environment ⇒ Object (readonly)
Returns the value of attribute environment.
41736 41737 41738 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 41736 def environment @environment end |
#event_id ⇒ Object (readonly)
Returns the value of attribute event_id.
41736 41737 41738 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 41736 def event_id @event_id end |
#experience_id ⇒ Object (readonly)
Returns the value of attribute experience_id.
41736 41737 41738 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 41736 def experience_id @experience_id end |
#expires_at ⇒ Object (readonly)
Returns the value of attribute expires_at.
41736 41737 41738 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 41736 def expires_at @expires_at end |
#geo ⇒ Object (readonly)
Returns the value of attribute geo.
41736 41737 41738 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 41736 def geo @geo end |
#items ⇒ Object (readonly)
Returns the value of attribute items.
41736 41737 41738 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 41736 def items @items end |
#lines ⇒ Object (readonly)
Returns the value of attribute lines.
41736 41737 41738 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 41736 def lines @lines end |
#merchant_of_record ⇒ Object (readonly)
Returns the value of attribute merchant_of_record.
41736 41737 41738 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 41736 def merchant_of_record @merchant_of_record end |
#number ⇒ Object (readonly)
Returns the value of attribute number.
41736 41737 41738 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 41736 def number @number end |
#order_id ⇒ Object (readonly)
Returns the value of attribute order_id.
41736 41737 41738 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 41736 def order_id @order_id end |
#organization ⇒ Object (readonly)
Returns the value of attribute organization.
41736 41737 41738 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 41736 def organization @organization end |
#payments ⇒ Object (readonly)
Returns the value of attribute payments.
41736 41737 41738 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 41736 def payments @payments end |
#prices ⇒ Object (readonly)
Returns the value of attribute prices.
41736 41737 41738 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 41736 def prices @prices end |
#selections ⇒ Object (readonly)
Returns the value of attribute selections.
41736 41737 41738 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 41736 def selections @selections end |
#submitted_at ⇒ Object (readonly)
Returns the value of attribute submitted_at.
41736 41737 41738 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 41736 def submitted_at @submitted_at end |
#tax_registration ⇒ Object (readonly)
Returns the value of attribute tax_registration.
41736 41737 41738 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 41736 def tax_registration @tax_registration end |
#timestamp ⇒ Object (readonly)
Returns the value of attribute timestamp.
41736 41737 41738 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 41736 def @timestamp end |
#total ⇒ Object (readonly)
Returns the value of attribute total.
41736 41737 41738 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 41736 def total @total end |
#updated_at ⇒ Object (readonly)
Returns the value of attribute updated_at.
41736 41737 41738 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 41736 def updated_at @updated_at end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
41774 41775 41776 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 41774 def copy(incoming={}) OrderUpserted.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#subtype_to_hash ⇒ Object
41778 41779 41780 41781 41782 41783 41784 41785 41786 41787 41788 41789 41790 41791 41792 41793 41794 41795 41796 41797 41798 41799 41800 41801 41802 41803 41804 41805 41806 41807 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 41778 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
41770 41771 41772 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 41770 def to_json JSON.dump(to_hash) end |