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.
12181 12182 12183 12184 12185 12186 12187 12188 12189 12190 12191 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12181 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.
12179 12180 12181 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12179 def amount @amount end |
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
12179 12180 12181 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12179 def attributes @attributes end |
#authorization ⇒ Object (readonly)
Returns the value of attribute authorization.
12179 12180 12181 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12179 def end |
#created_at ⇒ Object (readonly)
Returns the value of attribute created_at.
12179 12180 12181 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12179 def created_at @created_at end |
#currency ⇒ Object (readonly)
Returns the value of attribute currency.
12179 12180 12181 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12179 def currency @currency end |
#id ⇒ Object (readonly)
Returns the value of attribute id.
12179 12180 12181 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12179 def id @id end |
#key ⇒ Object (readonly)
Returns the value of attribute key.
12179 12180 12181 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12179 def key @key end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
12197 12198 12199 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12197 def copy(incoming={}) Capture.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#to_hash ⇒ Object
12201 12202 12203 12204 12205 12206 12207 12208 12209 12210 12211 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12201 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
12193 12194 12195 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12193 def to_json JSON.dump(to_hash) end |