Class: Io::Flow::V0::Models::CheckoutTokenReferenceForm

Inherits:
CheckoutTokenForm show all
Defined in:
lib/flow_commerce/flow_api_v0_client.rb

Overview

Use this form when order number and session id are known. Optional customer information will be created or updated.

Instance Attribute Summary collapse

Attributes inherited from CheckoutTokenForm

#discriminator

Instance Method Summary collapse

Methods inherited from CheckoutTokenForm

from_json, #to_hash

Constructor Details

#initialize(incoming = {}) ⇒ CheckoutTokenReferenceForm

Returns a new instance of CheckoutTokenReferenceForm.



36247
36248
36249
36250
36251
36252
36253
36254
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 36247

def initialize(incoming={})
  super(:discriminator => CheckoutTokenForm::Types::CHECKOUT_TOKEN_REFERENCE_FORM)
  opts = HttpClient::Helper.symbolize_keys(incoming)
  HttpClient::Preconditions.require_keys(opts, [:order_number, :session_id, :urls], 'CheckoutTokenReferenceForm')
  @order_number = HttpClient::Preconditions.assert_class('order_number', opts.delete(:order_number), String)
  @session_id = HttpClient::Preconditions.assert_class('session_id', opts.delete(:session_id), String)
  @urls = (x = opts.delete(:urls); x.is_a?(::Io::Flow::V0::Models::CheckoutUrlsForm) ? x : ::Io::Flow::V0::Models::CheckoutUrlsForm.new(x))
end

Instance Attribute Details

#order_numberObject (readonly)

Returns the value of attribute order_number.



36245
36246
36247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 36245

def order_number
  @order_number
end

#session_idObject (readonly)

Returns the value of attribute session_id.



36245
36246
36247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 36245

def session_id
  @session_id
end

#urlsObject (readonly)

Returns the value of attribute urls.



36245
36246
36247
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 36245

def urls
  @urls
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



36260
36261
36262
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 36260

def copy(incoming={})
  CheckoutTokenReferenceForm.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
end

#subtype_to_hashObject



36264
36265
36266
36267
36268
36269
36270
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 36264

def subtype_to_hash
  {
    :order_number => order_number,
    :session_id => session_id,
    :urls => urls.to_hash
  }
end

#to_jsonObject



36256
36257
36258
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 36256

def to_json
  JSON.dump(to_hash)
end