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.
11577 11578 11579 11580 11581 11582 11583 11584 11585 11586 11587 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11577 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.
11575 11576 11577 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11575 def amount @amount end |
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
11575 11576 11577 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11575 def attributes @attributes end |
#authorization ⇒ Object (readonly)
Returns the value of attribute authorization.
11575 11576 11577 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11575 def end |
#created_at ⇒ Object (readonly)
Returns the value of attribute created_at.
11575 11576 11577 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11575 def created_at @created_at end |
#currency ⇒ Object (readonly)
Returns the value of attribute currency.
11575 11576 11577 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11575 def currency @currency end |
#id ⇒ Object (readonly)
Returns the value of attribute id.
11575 11576 11577 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11575 def id @id end |
#key ⇒ Object (readonly)
Returns the value of attribute key.
11575 11576 11577 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11575 def key @key end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
11593 11594 11595 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11593 def copy(incoming={}) Capture.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#to_hash ⇒ Object
11597 11598 11599 11600 11601 11602 11603 11604 11605 11606 11607 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11597 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
11589 11590 11591 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11589 def to_json JSON.dump(to_hash) end |