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.
15512 15513 15514 15515 15516 15517 15518 15519 15520 15521 15522 15523 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15512 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.
15510 15511 15512 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15510 def amount @amount end |
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
15510 15511 15512 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15510 def attributes @attributes end |
#authorization ⇒ Object (readonly)
Returns the value of attribute authorization.
15510 15511 15512 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15510 def end |
#created_at ⇒ Object (readonly)
Returns the value of attribute created_at.
15510 15511 15512 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15510 def created_at @created_at end |
#currency ⇒ Object (readonly)
Returns the value of attribute currency.
15510 15511 15512 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15510 def currency @currency end |
#id ⇒ Object (readonly)
Returns the value of attribute id.
15510 15511 15512 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15510 def id @id end |
#key ⇒ Object (readonly)
Returns the value of attribute key.
15510 15511 15512 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15510 def key @key end |
#requested ⇒ Object (readonly)
Returns the value of attribute requested.
15510 15511 15512 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15510 def requested @requested end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
15529 15530 15531 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15529 def copy(incoming={}) Capture.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#to_hash ⇒ Object
15533 15534 15535 15536 15537 15538 15539 15540 15541 15542 15543 15544 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15533 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
15525 15526 15527 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15525 def to_json JSON.dump(to_hash) end |