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.
12917 12918 12919 12920 12921 12922 12923 12924 12925 12926 12927 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12917 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) = (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.
12915 12916 12917 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12915 def amount @amount end |
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
12915 12916 12917 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12915 def attributes @attributes end |
#authorization ⇒ Object (readonly)
Returns the value of attribute authorization.
12915 12916 12917 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12915 def end |
#created_at ⇒ Object (readonly)
Returns the value of attribute created_at.
12915 12916 12917 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12915 def created_at @created_at end |
#currency ⇒ Object (readonly)
Returns the value of attribute currency.
12915 12916 12917 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12915 def currency @currency end |
#id ⇒ Object (readonly)
Returns the value of attribute id.
12915 12916 12917 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12915 def id @id end |
#key ⇒ Object (readonly)
Returns the value of attribute key.
12915 12916 12917 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12915 def key @key end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
12933 12934 12935 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12933 def copy(incoming={}) Capture.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#to_hash ⇒ Object
12937 12938 12939 12940 12941 12942 12943 12944 12945 12946 12947 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12937 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
12929 12930 12931 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 12929 def to_json JSON.dump(to_hash) end |