Class: Io::Flow::V0::Models::AuthorizationCopyForm
- Inherits:
-
AuthorizationForm
- Object
- AuthorizationForm
- Io::Flow::V0::Models::AuthorizationCopyForm
- Defined in:
- lib/flow_commerce/flow_api_v0_client.rb
Overview
Creates a new authorization based on the underlying information in an existing authorization. A common use case here is to create a new auth when the existing one has expired.
Instance Attribute Summary collapse
-
#amount ⇒ Object
readonly
Returns the value of attribute amount.
-
#attributes ⇒ Object
readonly
Returns the value of attribute attributes.
-
#currency ⇒ Object
readonly
Returns the value of attribute currency.
-
#source_authorization_key ⇒ Object
readonly
Returns the value of attribute source_authorization_key.
Attributes inherited from AuthorizationForm
Instance Method Summary collapse
- #copy(incoming = {}) ⇒ Object
-
#initialize(incoming = {}) ⇒ AuthorizationCopyForm
constructor
A new instance of AuthorizationCopyForm.
- #subtype_to_hash ⇒ Object
- #to_json ⇒ Object
Methods inherited from AuthorizationForm
Constructor Details
#initialize(incoming = {}) ⇒ AuthorizationCopyForm
Returns a new instance of AuthorizationCopyForm.
20538 20539 20540 20541 20542 20543 20544 20545 20546 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 20538 def initialize(incoming={}) super(:discriminator => AuthorizationForm::Types::AUTHORIZATION_COPY_FORM) opts = HttpClient::Helper.symbolize_keys(incoming) HttpClient::Preconditions.require_keys(opts, [:source_authorization_key, :amount, :currency], 'AuthorizationCopyForm') @source_authorization_key = HttpClient::Preconditions.assert_class('source_authorization_key', opts.delete(:source_authorization_key), String) @amount = HttpClient::Preconditions.assert_class('amount', HttpClient::Helper.to_big_decimal(opts.delete(:amount)), BigDecimal) @currency = HttpClient::Preconditions.assert_class('currency', opts.delete(:currency), String) @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
#amount ⇒ Object (readonly)
Returns the value of attribute amount.
20536 20537 20538 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 20536 def amount @amount end |
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
20536 20537 20538 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 20536 def attributes @attributes end |
#currency ⇒ Object (readonly)
Returns the value of attribute currency.
20536 20537 20538 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 20536 def currency @currency end |
#source_authorization_key ⇒ Object (readonly)
Returns the value of attribute source_authorization_key.
20536 20537 20538 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 20536 def @source_authorization_key end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
20552 20553 20554 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 20552 def copy(incoming={}) AuthorizationCopyForm.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#subtype_to_hash ⇒ Object
20556 20557 20558 20559 20560 20561 20562 20563 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 20556 def subtype_to_hash { :source_authorization_key => , :amount => amount.to_f.to_s, :currency => currency, :attributes => attributes.nil? ? nil : attributes } end |
#to_json ⇒ Object
20548 20549 20550 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 20548 def to_json JSON.dump(to_hash) end |