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.
-
#items ⇒ Object
readonly
Returns the value of attribute items.
-
#lines ⇒ Object
readonly
Returns the value of attribute lines.
-
#number ⇒ Object
readonly
Returns the value of attribute number.
-
#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.
-
#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.
25374 25375 25376 25377 25378 25379 25380 25381 25382 25383 25384 25385 25386 25387 25388 25389 25390 25391 25392 25393 25394 25395 25396 25397 25398 25399 25400 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25374 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)) } @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 }) end |
Instance Attribute Details
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
25372 25373 25374 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25372 def attributes @attributes end |
#created_at ⇒ Object (readonly)
Returns the value of attribute created_at.
25372 25373 25374 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25372 def created_at @created_at end |
#customer ⇒ Object (readonly)
Returns the value of attribute customer.
25372 25373 25374 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25372 def customer @customer end |
#delivered_duty ⇒ Object (readonly)
Returns the value of attribute delivered_duty.
25372 25373 25374 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25372 def delivered_duty @delivered_duty end |
#deliveries ⇒ Object (readonly)
Returns the value of attribute deliveries.
25372 25373 25374 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25372 def deliveries @deliveries end |
#destination ⇒ Object (readonly)
Returns the value of attribute destination.
25372 25373 25374 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25372 def destination @destination end |
#discount ⇒ Object (readonly)
Returns the value of attribute discount.
25372 25373 25374 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25372 def discount @discount end |
#environment ⇒ Object (readonly)
Returns the value of attribute environment.
25372 25373 25374 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25372 def environment @environment end |
#event_id ⇒ Object (readonly)
Returns the value of attribute event_id.
25372 25373 25374 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25372 def event_id @event_id end |
#experience_id ⇒ Object (readonly)
Returns the value of attribute experience_id.
25372 25373 25374 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25372 def experience_id @experience_id end |
#expires_at ⇒ Object (readonly)
Returns the value of attribute expires_at.
25372 25373 25374 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25372 def expires_at @expires_at end |
#items ⇒ Object (readonly)
Returns the value of attribute items.
25372 25373 25374 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25372 def items @items end |
#lines ⇒ Object (readonly)
Returns the value of attribute lines.
25372 25373 25374 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25372 def lines @lines end |
#number ⇒ Object (readonly)
Returns the value of attribute number.
25372 25373 25374 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25372 def number @number end |
#organization ⇒ Object (readonly)
Returns the value of attribute organization.
25372 25373 25374 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25372 def organization @organization end |
#payments ⇒ Object (readonly)
Returns the value of attribute payments.
25372 25373 25374 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25372 def payments @payments end |
#prices ⇒ Object (readonly)
Returns the value of attribute prices.
25372 25373 25374 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25372 def prices @prices end |
#selections ⇒ Object (readonly)
Returns the value of attribute selections.
25372 25373 25374 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25372 def selections @selections end |
#submitted_at ⇒ Object (readonly)
Returns the value of attribute submitted_at.
25372 25373 25374 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25372 def submitted_at @submitted_at end |
#timestamp ⇒ Object (readonly)
Returns the value of attribute timestamp.
25372 25373 25374 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25372 def end |
#total ⇒ Object (readonly)
Returns the value of attribute total.
25372 25373 25374 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25372 def total @total end |
#updated_at ⇒ Object (readonly)
Returns the value of attribute updated_at.
25372 25373 25374 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25372 def updated_at @updated_at end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
25406 25407 25408 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25406 def copy(incoming={}) OrderUpserted.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#subtype_to_hash ⇒ Object
25410 25411 25412 25413 25414 25415 25416 25417 25418 25419 25420 25421 25422 25423 25424 25425 25426 25427 25428 25429 25430 25431 25432 25433 25434 25435 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25410 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 }, :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 } end |
#to_json ⇒ Object
25402 25403 25404 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 25402 def to_json JSON.dump(to_hash) end |