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.
11592 11593 11594 11595 11596 11597 11598 11599 11600 11601 11602 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11592 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.
11590 11591 11592 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11590 def amount @amount end |
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
11590 11591 11592 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11590 def attributes @attributes end |
#authorization ⇒ Object (readonly)
Returns the value of attribute authorization.
11590 11591 11592 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11590 def @authorization end |
#created_at ⇒ Object (readonly)
Returns the value of attribute created_at.
11590 11591 11592 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11590 def created_at @created_at end |
#currency ⇒ Object (readonly)
Returns the value of attribute currency.
11590 11591 11592 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11590 def currency @currency end |
#id ⇒ Object (readonly)
Returns the value of attribute id.
11590 11591 11592 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11590 def id @id end |
#key ⇒ Object (readonly)
Returns the value of attribute key.
11590 11591 11592 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11590 def key @key end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
11608 11609 11610 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11608 def copy(incoming={}) Capture.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#to_hash ⇒ Object
11612 11613 11614 11615 11616 11617 11618 11619 11620 11621 11622 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11612 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
11604 11605 11606 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11604 def to_json JSON.dump(to_hash) end |