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.
12038 12039 12040 12041 12042 12043 12044 12045 12046 12047 12048 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12038 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) = (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.
12036 12037 12038 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12036 def amount @amount end |
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
12036 12037 12038 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12036 def attributes @attributes end |
#authorization ⇒ Object (readonly)
Returns the value of attribute authorization.
12036 12037 12038 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12036 def end |
#created_at ⇒ Object (readonly)
Returns the value of attribute created_at.
12036 12037 12038 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12036 def created_at @created_at end |
#currency ⇒ Object (readonly)
Returns the value of attribute currency.
12036 12037 12038 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12036 def currency @currency end |
#id ⇒ Object (readonly)
Returns the value of attribute id.
12036 12037 12038 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12036 def id @id end |
#key ⇒ Object (readonly)
Returns the value of attribute key.
12036 12037 12038 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12036 def key @key end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
12054 12055 12056 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12054 def copy(incoming={}) Capture.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#to_hash ⇒ Object
12058 12059 12060 12061 12062 12063 12064 12065 12066 12067 12068 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12058 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
12050 12051 12052 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12050 def to_json JSON.dump(to_hash) end |