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.
12726 12727 12728 12729 12730 12731 12732 12733 12734 12735 12736 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12726 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.
12724 12725 12726 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12724 def amount @amount end |
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
12724 12725 12726 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12724 def attributes @attributes end |
#authorization ⇒ Object (readonly)
Returns the value of attribute authorization.
12724 12725 12726 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12724 def @authorization end |
#created_at ⇒ Object (readonly)
Returns the value of attribute created_at.
12724 12725 12726 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12724 def created_at @created_at end |
#currency ⇒ Object (readonly)
Returns the value of attribute currency.
12724 12725 12726 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12724 def currency @currency end |
#id ⇒ Object (readonly)
Returns the value of attribute id.
12724 12725 12726 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12724 def id @id end |
#key ⇒ Object (readonly)
Returns the value of attribute key.
12724 12725 12726 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12724 def key @key end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
12742 12743 12744 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12742 def copy(incoming={}) Capture.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#to_hash ⇒ Object
12746 12747 12748 12749 12750 12751 12752 12753 12754 12755 12756 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12746 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
12738 12739 12740 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12738 def to_json JSON.dump(to_hash) end |