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.
13362 13363 13364 13365 13366 13367 13368 13369 13370 13371 13372 13373 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13362 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.
13360 13361 13362 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13360 def amount @amount end |
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
13360 13361 13362 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13360 def attributes @attributes end |
#authorization ⇒ Object (readonly)
Returns the value of attribute authorization.
13360 13361 13362 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13360 def @authorization end |
#created_at ⇒ Object (readonly)
Returns the value of attribute created_at.
13360 13361 13362 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13360 def created_at @created_at end |
#currency ⇒ Object (readonly)
Returns the value of attribute currency.
13360 13361 13362 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13360 def currency @currency end |
#id ⇒ Object (readonly)
Returns the value of attribute id.
13360 13361 13362 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13360 def id @id end |
#key ⇒ Object (readonly)
Returns the value of attribute key.
13360 13361 13362 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13360 def key @key end |
#requested ⇒ Object (readonly)
Returns the value of attribute requested.
13360 13361 13362 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13360 def requested @requested end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
13379 13380 13381 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13379 def copy(incoming={}) Capture.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#to_hash ⇒ Object
13383 13384 13385 13386 13387 13388 13389 13390 13391 13392 13393 13394 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13383 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
13375 13376 13377 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13375 def to_json JSON.dump(to_hash) end |