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.
11115 11116 11117 11118 11119 11120 11121 11122 11123 11124 11125 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11115 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.
11113 11114 11115 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11113 def amount @amount end |
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
11113 11114 11115 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11113 def attributes @attributes end |
#authorization ⇒ Object (readonly)
Returns the value of attribute authorization.
11113 11114 11115 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11113 def @authorization end |
#created_at ⇒ Object (readonly)
Returns the value of attribute created_at.
11113 11114 11115 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11113 def created_at @created_at end |
#currency ⇒ Object (readonly)
Returns the value of attribute currency.
11113 11114 11115 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11113 def currency @currency end |
#id ⇒ Object (readonly)
Returns the value of attribute id.
11113 11114 11115 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11113 def id @id end |
#key ⇒ Object (readonly)
Returns the value of attribute key.
11113 11114 11115 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11113 def key @key end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
11131 11132 11133 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11131 def copy(incoming={}) Capture.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#to_hash ⇒ Object
11135 11136 11137 11138 11139 11140 11141 11142 11143 11144 11145 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11135 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
11127 11128 11129 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 11127 def to_json JSON.dump(to_hash) end |