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.
32218 32219 32220 32221 32222 32223 32224 32225 32226 32227 32228 32229 32230 32231 32232 32233 32234 32235 32236 32237 32238 32239 32240 32241 32242 32243 32244 32245 32246 32247 32248 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32218 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 = 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.
32216 32217 32218 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32216 def attributes @attributes end |
#created_at ⇒ Object (readonly)
Returns the value of attribute created_at.
32216 32217 32218 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32216 def created_at @created_at end |
#customer ⇒ Object (readonly)
Returns the value of attribute customer.
32216 32217 32218 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32216 def customer @customer end |
#delivered_duty ⇒ Object (readonly)
Returns the value of attribute delivered_duty.
32216 32217 32218 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32216 def delivered_duty @delivered_duty end |
#deliveries ⇒ Object (readonly)
Returns the value of attribute deliveries.
32216 32217 32218 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32216 def deliveries @deliveries end |
#destination ⇒ Object (readonly)
Returns the value of attribute destination.
32216 32217 32218 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32216 def destination @destination end |
#discount ⇒ Object (readonly)
Returns the value of attribute discount.
32216 32217 32218 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32216 def discount @discount end |
#environment ⇒ Object (readonly)
Returns the value of attribute environment.
32216 32217 32218 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32216 def environment @environment end |
#event_id ⇒ Object (readonly)
Returns the value of attribute event_id.
32216 32217 32218 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32216 def event_id @event_id end |
#experience_id ⇒ Object (readonly)
Returns the value of attribute experience_id.
32216 32217 32218 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32216 def experience_id @experience_id end |
#expires_at ⇒ Object (readonly)
Returns the value of attribute expires_at.
32216 32217 32218 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32216 def expires_at @expires_at end |
#geo ⇒ Object (readonly)
Returns the value of attribute geo.
32216 32217 32218 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32216 def geo @geo end |
#items ⇒ Object (readonly)
Returns the value of attribute items.
32216 32217 32218 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32216 def items @items end |
#lines ⇒ Object (readonly)
Returns the value of attribute lines.
32216 32217 32218 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32216 def lines @lines end |
#merchant_of_record ⇒ Object (readonly)
Returns the value of attribute merchant_of_record.
32216 32217 32218 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32216 def merchant_of_record @merchant_of_record end |
#number ⇒ Object (readonly)
Returns the value of attribute number.
32216 32217 32218 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32216 def number @number end |
#order_id ⇒ Object (readonly)
Returns the value of attribute order_id.
32216 32217 32218 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32216 def order_id @order_id end |
#organization ⇒ Object (readonly)
Returns the value of attribute organization.
32216 32217 32218 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32216 def organization @organization end |
#payments ⇒ Object (readonly)
Returns the value of attribute payments.
32216 32217 32218 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32216 def payments @payments end |
#prices ⇒ Object (readonly)
Returns the value of attribute prices.
32216 32217 32218 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32216 def prices @prices end |
#selections ⇒ Object (readonly)
Returns the value of attribute selections.
32216 32217 32218 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32216 def selections @selections end |
#submitted_at ⇒ Object (readonly)
Returns the value of attribute submitted_at.
32216 32217 32218 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32216 def submitted_at @submitted_at end |
#tax_registration ⇒ Object (readonly)
Returns the value of attribute tax_registration.
32216 32217 32218 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32216 def tax_registration @tax_registration end |
#timestamp ⇒ Object (readonly)
Returns the value of attribute timestamp.
32216 32217 32218 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32216 def end |
#total ⇒ Object (readonly)
Returns the value of attribute total.
32216 32217 32218 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32216 def total @total end |
#updated_at ⇒ Object (readonly)
Returns the value of attribute updated_at.
32216 32217 32218 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32216 def updated_at @updated_at end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
32254 32255 32256 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32254 def copy(incoming={}) OrderUpserted.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#subtype_to_hash ⇒ Object
32258 32259 32260 32261 32262 32263 32264 32265 32266 32267 32268 32269 32270 32271 32272 32273 32274 32275 32276 32277 32278 32279 32280 32281 32282 32283 32284 32285 32286 32287 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32258 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
32250 32251 32252 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 32250 def to_json JSON.dump(to_hash) end |