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.
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.
12675 12676 12677 12678 12679 12680 12681 12682 12683 12684 12685 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12675 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) @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.
12673 12674 12675 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12673 def amount @amount end |
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
12673 12674 12675 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12673 def attributes @attributes end |
#authorization ⇒ Object (readonly)
Returns the value of attribute authorization.
12673 12674 12675 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12673 def @authorization end |
#created_at ⇒ Object (readonly)
Returns the value of attribute created_at.
12673 12674 12675 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12673 def created_at @created_at end |
#currency ⇒ Object (readonly)
Returns the value of attribute currency.
12673 12674 12675 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12673 def currency @currency end |
#id ⇒ Object (readonly)
Returns the value of attribute id.
12673 12674 12675 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12673 def id @id end |
#key ⇒ Object (readonly)
Returns the value of attribute key.
12673 12674 12675 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12673 def key @key end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
12691 12692 12693 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12691 def copy(incoming={}) Capture.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#to_hash ⇒ Object
12695 12696 12697 12698 12699 12700 12701 12702 12703 12704 12705 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12695 def to_hash { :id => id, :key => key, :authorization => .to_hash, :amount => amount, :currency => currency, :created_at => created_at, :attributes => attributes.nil? ? nil : attributes } end |
#to_json ⇒ Object
12687 12688 12689 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12687 def to_json JSON.dump(to_hash) end |