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.
12766 12767 12768 12769 12770 12771 12772 12773 12774 12775 12776 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12766 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.
12764 12765 12766 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12764 def amount @amount end |
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
12764 12765 12766 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12764 def attributes @attributes end |
#authorization ⇒ Object (readonly)
Returns the value of attribute authorization.
12764 12765 12766 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12764 def @authorization end |
#created_at ⇒ Object (readonly)
Returns the value of attribute created_at.
12764 12765 12766 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12764 def created_at @created_at end |
#currency ⇒ Object (readonly)
Returns the value of attribute currency.
12764 12765 12766 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12764 def currency @currency end |
#id ⇒ Object (readonly)
Returns the value of attribute id.
12764 12765 12766 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12764 def id @id end |
#key ⇒ Object (readonly)
Returns the value of attribute key.
12764 12765 12766 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12764 def key @key end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
12782 12783 12784 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12782 def copy(incoming={}) Capture.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#to_hash ⇒ Object
12786 12787 12788 12789 12790 12791 12792 12793 12794 12795 12796 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12786 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
12778 12779 12780 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12778 def to_json JSON.dump(to_hash) end |