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.
13418 13419 13420 13421 13422 13423 13424 13425 13426 13427 13428 13429 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13418 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) @authorization = (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.
13416 13417 13418 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13416 def amount @amount end |
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
13416 13417 13418 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13416 def attributes @attributes end |
#authorization ⇒ Object (readonly)
Returns the value of attribute authorization.
13416 13417 13418 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13416 def @authorization end |
#created_at ⇒ Object (readonly)
Returns the value of attribute created_at.
13416 13417 13418 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13416 def created_at @created_at end |
#currency ⇒ Object (readonly)
Returns the value of attribute currency.
13416 13417 13418 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13416 def currency @currency end |
#id ⇒ Object (readonly)
Returns the value of attribute id.
13416 13417 13418 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13416 def id @id end |
#key ⇒ Object (readonly)
Returns the value of attribute key.
13416 13417 13418 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13416 def key @key end |
#requested ⇒ Object (readonly)
Returns the value of attribute requested.
13416 13417 13418 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13416 def requested @requested end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
13435 13436 13437 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13435 def copy(incoming={}) Capture.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#to_hash ⇒ Object
13439 13440 13441 13442 13443 13444 13445 13446 13447 13448 13449 13450 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13439 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
13431 13432 13433 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13431 def to_json JSON.dump(to_hash) end |