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.
-
#original ⇒ Object
readonly
Returns the value of attribute original.
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.
13350 13351 13352 13353 13354 13355 13356 13357 13358 13359 13360 13361 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13350 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) @original = (x = opts.delete(:original); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::Money) ? x : ::Io::Flow::V0::Models::Money.new(x))) @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.
13348 13349 13350 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13348 def amount @amount end |
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
13348 13349 13350 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13348 def attributes @attributes end |
#authorization ⇒ Object (readonly)
Returns the value of attribute authorization.
13348 13349 13350 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13348 def @authorization end |
#created_at ⇒ Object (readonly)
Returns the value of attribute created_at.
13348 13349 13350 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13348 def created_at @created_at end |
#currency ⇒ Object (readonly)
Returns the value of attribute currency.
13348 13349 13350 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13348 def currency @currency end |
#id ⇒ Object (readonly)
Returns the value of attribute id.
13348 13349 13350 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13348 def id @id end |
#key ⇒ Object (readonly)
Returns the value of attribute key.
13348 13349 13350 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13348 def key @key end |
#original ⇒ Object (readonly)
Returns the value of attribute original.
13348 13349 13350 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13348 def original @original end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
13367 13368 13369 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13367 def copy(incoming={}) Capture.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#to_hash ⇒ Object
13371 13372 13373 13374 13375 13376 13377 13378 13379 13380 13381 13382 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13371 def to_hash { :id => id, :key => key, :authorization => .to_hash, :amount => amount, :currency => currency, :original => original.nil? ? nil : original.to_hash, :created_at => created_at, :attributes => attributes.nil? ? nil : attributes } end |
#to_json ⇒ Object
13363 13364 13365 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13363 def to_json JSON.dump(to_hash) end |