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.
-
#requested ⇒ Object
readonly
Returns the value of attribute requested.
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.
15510 15511 15512 15513 15514 15515 15516 15517 15518 15519 15520 15521 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15510 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) @requested = (x = opts.delete(:requested); 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.
15508 15509 15510 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15508 def amount @amount end |
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
15508 15509 15510 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15508 def attributes @attributes end |
#authorization ⇒ Object (readonly)
Returns the value of attribute authorization.
15508 15509 15510 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15508 def @authorization end |
#created_at ⇒ Object (readonly)
Returns the value of attribute created_at.
15508 15509 15510 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15508 def created_at @created_at end |
#currency ⇒ Object (readonly)
Returns the value of attribute currency.
15508 15509 15510 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15508 def currency @currency end |
#id ⇒ Object (readonly)
Returns the value of attribute id.
15508 15509 15510 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15508 def id @id end |
#key ⇒ Object (readonly)
Returns the value of attribute key.
15508 15509 15510 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15508 def key @key end |
#requested ⇒ Object (readonly)
Returns the value of attribute requested.
15508 15509 15510 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15508 def requested @requested end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
15527 15528 15529 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15527 def copy(incoming={}) Capture.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#to_hash ⇒ Object
15531 15532 15533 15534 15535 15536 15537 15538 15539 15540 15541 15542 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15531 def to_hash { :id => id, :key => key, :authorization => .to_hash, :amount => amount, :currency => currency, :requested => requested.nil? ? nil : requested.to_hash, :created_at => created_at, :attributes => attributes.nil? ? nil : attributes } end |
#to_json ⇒ Object
15523 15524 15525 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15523 def to_json JSON.dump(to_hash) end |