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.
14727 14728 14729 14730 14731 14732 14733 14734 14735 14736 14737 14738 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14727 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.
14725 14726 14727 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14725 def amount @amount end |
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
14725 14726 14727 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14725 def attributes @attributes end |
#authorization ⇒ Object (readonly)
Returns the value of attribute authorization.
14725 14726 14727 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14725 def @authorization end |
#created_at ⇒ Object (readonly)
Returns the value of attribute created_at.
14725 14726 14727 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14725 def created_at @created_at end |
#currency ⇒ Object (readonly)
Returns the value of attribute currency.
14725 14726 14727 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14725 def currency @currency end |
#id ⇒ Object (readonly)
Returns the value of attribute id.
14725 14726 14727 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14725 def id @id end |
#key ⇒ Object (readonly)
Returns the value of attribute key.
14725 14726 14727 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14725 def key @key end |
#requested ⇒ Object (readonly)
Returns the value of attribute requested.
14725 14726 14727 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14725 def requested @requested end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
14744 14745 14746 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14744 def copy(incoming={}) Capture.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#to_hash ⇒ Object
14748 14749 14750 14751 14752 14753 14754 14755 14756 14757 14758 14759 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14748 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
14740 14741 14742 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 14740 def to_json JSON.dump(to_hash) end |