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.
12748 12749 12750 12751 12752 12753 12754 12755 12756 12757 12758 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12748 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.
12746 12747 12748 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12746 def amount @amount end |
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
12746 12747 12748 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12746 def attributes @attributes end |
#authorization ⇒ Object (readonly)
Returns the value of attribute authorization.
12746 12747 12748 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12746 def @authorization end |
#created_at ⇒ Object (readonly)
Returns the value of attribute created_at.
12746 12747 12748 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12746 def created_at @created_at end |
#currency ⇒ Object (readonly)
Returns the value of attribute currency.
12746 12747 12748 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12746 def currency @currency end |
#id ⇒ Object (readonly)
Returns the value of attribute id.
12746 12747 12748 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12746 def id @id end |
#key ⇒ Object (readonly)
Returns the value of attribute key.
12746 12747 12748 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12746 def key @key end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
12764 12765 12766 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12764 def copy(incoming={}) Capture.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#to_hash ⇒ Object
12768 12769 12770 12771 12772 12773 12774 12775 12776 12777 12778 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12768 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
12760 12761 12762 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12760 def to_json JSON.dump(to_hash) end |