Class: Io::Flow::V0::Models::Capture
- Inherits:
-
Object
- Object
- Io::Flow::V0::Models::Capture
- Defined in:
- lib/flow_commerce/flow_api_v0_client.rb
Overview
Capture actually transfers funds. You can capture as many times as you’d like up until the total amount of the authorization has been captured or the authorization otherwise becomes unavailable (e.g. expires).
Instance Attribute Summary collapse
-
#amount ⇒ Object
readonly
Returns the value of attribute amount.
-
#attributes ⇒ Object
readonly
Returns the value of attribute attributes.
-
#authorization ⇒ Object
readonly
Returns the value of attribute authorization.
-
#created_at ⇒ Object
readonly
Returns the value of attribute created_at.
-
#currency ⇒ Object
readonly
Returns the value of attribute currency.
-
#id ⇒ Object
readonly
Returns the value of attribute id.
-
#key ⇒ Object
readonly
Returns the value of attribute key.
-
#requested ⇒ Object
readonly
Returns the value of attribute requested.
Instance Method Summary collapse
- #copy(incoming = {}) ⇒ Object
-
#initialize(incoming = {}) ⇒ Capture
constructor
A new instance of Capture.
- #to_hash ⇒ Object
- #to_json ⇒ Object
Constructor Details
#initialize(incoming = {}) ⇒ Capture
Returns a new instance of Capture.
13436 13437 13438 13439 13440 13441 13442 13443 13444 13445 13446 13447 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13436 def initialize(incoming={}) opts = HttpClient::Helper.symbolize_keys(incoming) HttpClient::Preconditions.require_keys(opts, [:id, :key, :authorization, :amount, :currency, :created_at], 'Capture') @id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String) @key = HttpClient::Preconditions.assert_class('key', opts.delete(:key), String) = (x = opts.delete(:authorization); x.is_a?(::Io::Flow::V0::Models::AuthorizationReference) ? x : ::Io::Flow::V0::Models::AuthorizationReference.new(x)) @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) @requested = (x = opts.delete(:requested); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::Money) ? x : ::Io::Flow::V0::Models::Money.new(x))) @created_at = HttpClient::Preconditions.assert_class('created_at', HttpClient::Helper.to_date_time_iso8601(opts.delete(:created_at)), DateTime) @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.
13434 13435 13436 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13434 def amount @amount end |
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
13434 13435 13436 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13434 def attributes @attributes end |
#authorization ⇒ Object (readonly)
Returns the value of attribute authorization.
13434 13435 13436 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13434 def end |
#created_at ⇒ Object (readonly)
Returns the value of attribute created_at.
13434 13435 13436 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13434 def created_at @created_at end |
#currency ⇒ Object (readonly)
Returns the value of attribute currency.
13434 13435 13436 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13434 def currency @currency end |
#id ⇒ Object (readonly)
Returns the value of attribute id.
13434 13435 13436 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13434 def id @id end |
#key ⇒ Object (readonly)
Returns the value of attribute key.
13434 13435 13436 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13434 def key @key end |
#requested ⇒ Object (readonly)
Returns the value of attribute requested.
13434 13435 13436 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13434 def requested @requested end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
13453 13454 13455 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13453 def copy(incoming={}) Capture.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#to_hash ⇒ Object
13457 13458 13459 13460 13461 13462 13463 13464 13465 13466 13467 13468 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13457 def to_hash { :id => id, :key => key, :authorization => .to_hash, :amount => amount, :currency => currency, :requested => requested.nil? ? nil : requested.to_hash, :created_at => created_at, :attributes => attributes.nil? ? nil : attributes } end |
#to_json ⇒ Object
13449 13450 13451 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13449 def to_json JSON.dump(to_hash) end |