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.
14969 14970 14971 14972 14973 14974 14975 14976 14977 14978 14979 14980 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14969 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.
14967 14968 14969 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14967 def amount @amount end |
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
14967 14968 14969 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14967 def attributes @attributes end |
#authorization ⇒ Object (readonly)
Returns the value of attribute authorization.
14967 14968 14969 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14967 def @authorization end |
#created_at ⇒ Object (readonly)
Returns the value of attribute created_at.
14967 14968 14969 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14967 def created_at @created_at end |
#currency ⇒ Object (readonly)
Returns the value of attribute currency.
14967 14968 14969 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14967 def currency @currency end |
#id ⇒ Object (readonly)
Returns the value of attribute id.
14967 14968 14969 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14967 def id @id end |
#key ⇒ Object (readonly)
Returns the value of attribute key.
14967 14968 14969 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14967 def key @key end |
#requested ⇒ Object (readonly)
Returns the value of attribute requested.
14967 14968 14969 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14967 def requested @requested end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
14986 14987 14988 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14986 def copy(incoming={}) Capture.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#to_hash ⇒ Object
14990 14991 14992 14993 14994 14995 14996 14997 14998 14999 15000 15001 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14990 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
14982 14983 14984 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14982 def to_json JSON.dump(to_hash) end |