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.
12583 12584 12585 12586 12587 12588 12589 12590 12591 12592 12593 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12583 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.
12581 12582 12583 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12581 def amount @amount end |
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
12581 12582 12583 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12581 def attributes @attributes end |
#authorization ⇒ Object (readonly)
Returns the value of attribute authorization.
12581 12582 12583 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12581 def @authorization end |
#created_at ⇒ Object (readonly)
Returns the value of attribute created_at.
12581 12582 12583 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12581 def created_at @created_at end |
#currency ⇒ Object (readonly)
Returns the value of attribute currency.
12581 12582 12583 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12581 def currency @currency end |
#id ⇒ Object (readonly)
Returns the value of attribute id.
12581 12582 12583 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12581 def id @id end |
#key ⇒ Object (readonly)
Returns the value of attribute key.
12581 12582 12583 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12581 def key @key end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
12599 12600 12601 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12599 def copy(incoming={}) Capture.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#to_hash ⇒ Object
12603 12604 12605 12606 12607 12608 12609 12610 12611 12612 12613 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12603 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
12595 12596 12597 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12595 def to_json JSON.dump(to_hash) end |