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
12995 12996 12997 12998 12999 13000 13001 13002 13003 13004 13005 13006 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12995 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.
12993 12994 12995 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12993 def amount @amount end |
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
12993 12994 12995 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12993 def attributes @attributes end |
#authorization ⇒ Object (readonly)
Returns the value of attribute authorization.
12993 12994 12995 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12993 def @authorization end |
#created_at ⇒ Object (readonly)
Returns the value of attribute created_at.
12993 12994 12995 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12993 def created_at @created_at end |
#currency ⇒ Object (readonly)
Returns the value of attribute currency.
12993 12994 12995 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12993 def currency @currency end |
#id ⇒ Object (readonly)
Returns the value of attribute id.
12993 12994 12995 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12993 def id @id end |
#key ⇒ Object (readonly)
Returns the value of attribute key.
12993 12994 12995 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12993 def key @key end |
#original ⇒ Object (readonly)
Returns the value of attribute original.
12993 12994 12995 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12993 def original @original end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
13012 13013 13014 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13012 def copy(incoming={}) Capture.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#to_hash ⇒ Object
13016 13017 13018 13019 13020 13021 13022 13023 13024 13025 13026 13027 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13016 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
13008 13009 13010 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13008 def to_json JSON.dump(to_hash) end |