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.
28984 28985 28986 28987 28988 28989 28990 28991 28992 28993 28994 28995 28996 28997 28998 28999 29000 29001 29002 29003 29004 29005 29006 29007 29008 29009 29010 29011 29012 29013 29014 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28984 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) = 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::Customer) ? x : ::Io::Flow::V0::Models::Customer.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 = (x = opts.delete(:merchant_of_record); x.nil? ? "flow" : 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.
28982 28983 28984 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28982 def attributes @attributes end |
#created_at ⇒ Object (readonly)
Returns the value of attribute created_at.
28982 28983 28984 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28982 def created_at @created_at end |
#customer ⇒ Object (readonly)
Returns the value of attribute customer.
28982 28983 28984 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28982 def customer @customer end |
#delivered_duty ⇒ Object (readonly)
Returns the value of attribute delivered_duty.
28982 28983 28984 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28982 def delivered_duty @delivered_duty end |
#deliveries ⇒ Object (readonly)
Returns the value of attribute deliveries.
28982 28983 28984 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28982 def deliveries @deliveries end |
#destination ⇒ Object (readonly)
Returns the value of attribute destination.
28982 28983 28984 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28982 def destination @destination end |
#discount ⇒ Object (readonly)
Returns the value of attribute discount.
28982 28983 28984 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28982 def discount @discount end |
#environment ⇒ Object (readonly)
Returns the value of attribute environment.
28982 28983 28984 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28982 def environment @environment end |
#event_id ⇒ Object (readonly)
Returns the value of attribute event_id.
28982 28983 28984 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28982 def event_id @event_id end |
#experience_id ⇒ Object (readonly)
Returns the value of attribute experience_id.
28982 28983 28984 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28982 def experience_id @experience_id end |
#expires_at ⇒ Object (readonly)
Returns the value of attribute expires_at.
28982 28983 28984 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28982 def expires_at @expires_at end |
#geo ⇒ Object (readonly)
Returns the value of attribute geo.
28982 28983 28984 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28982 def geo @geo end |
#items ⇒ Object (readonly)
Returns the value of attribute items.
28982 28983 28984 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28982 def items @items end |
#lines ⇒ Object (readonly)
Returns the value of attribute lines.
28982 28983 28984 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28982 def lines @lines end |
#merchant_of_record ⇒ Object (readonly)
Returns the value of attribute merchant_of_record.
28982 28983 28984 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28982 def merchant_of_record @merchant_of_record end |
#number ⇒ Object (readonly)
Returns the value of attribute number.
28982 28983 28984 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28982 def number @number end |
#order_id ⇒ Object (readonly)
Returns the value of attribute order_id.
28982 28983 28984 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28982 def order_id @order_id end |
#organization ⇒ Object (readonly)
Returns the value of attribute organization.
28982 28983 28984 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28982 def organization @organization end |
#payments ⇒ Object (readonly)
Returns the value of attribute payments.
28982 28983 28984 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28982 def payments @payments end |
#prices ⇒ Object (readonly)
Returns the value of attribute prices.
28982 28983 28984 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28982 def prices @prices end |
#selections ⇒ Object (readonly)
Returns the value of attribute selections.
28982 28983 28984 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28982 def selections @selections end |
#submitted_at ⇒ Object (readonly)
Returns the value of attribute submitted_at.
28982 28983 28984 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28982 def submitted_at @submitted_at end |
#tax_registration ⇒ Object (readonly)
Returns the value of attribute tax_registration.
28982 28983 28984 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28982 def tax_registration @tax_registration end |
#timestamp ⇒ Object (readonly)
Returns the value of attribute timestamp.
28982 28983 28984 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28982 def end |
#total ⇒ Object (readonly)
Returns the value of attribute total.
28982 28983 28984 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28982 def total @total end |
#updated_at ⇒ Object (readonly)
Returns the value of attribute updated_at.
28982 28983 28984 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 28982 def updated_at @updated_at end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
29020 29021 29022 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 29020 def copy(incoming={}) OrderUpserted.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#subtype_to_hash ⇒ Object
29024 29025 29026 29027 29028 29029 29030 29031 29032 29033 29034 29035 29036 29037 29038 29039 29040 29041 29042 29043 29044 29045 29046 29047 29048 29049 29050 29051 29052 29053 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 29024 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.value, :tax_registration => tax_registration.nil? ? nil : tax_registration.to_hash } end |
#to_json ⇒ Object
29016 29017 29018 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 29016 def to_json JSON.dump(to_hash) end |