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.
-
#status ⇒ Object
readonly
Returns the value of attribute status.
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.
17086 17087 17088 17089 17090 17091 17092 17093 17094 17095 17096 17097 17098 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 17086 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 }) @status = (x = (x = opts.delete(:status); x.nil? ? "succeeded" : x); x.is_a?(::Io::Flow::V0::Models::CaptureStatus) ? x : ::Io::Flow::V0::Models::CaptureStatus.apply(x)) end |
Instance Attribute Details
#amount ⇒ Object (readonly)
Returns the value of attribute amount.
17084 17085 17086 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 17084 def amount @amount end |
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
17084 17085 17086 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 17084 def attributes @attributes end |
#authorization ⇒ Object (readonly)
Returns the value of attribute authorization.
17084 17085 17086 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 17084 def @authorization end |
#created_at ⇒ Object (readonly)
Returns the value of attribute created_at.
17084 17085 17086 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 17084 def created_at @created_at end |
#currency ⇒ Object (readonly)
Returns the value of attribute currency.
17084 17085 17086 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 17084 def currency @currency end |
#id ⇒ Object (readonly)
Returns the value of attribute id.
17084 17085 17086 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 17084 def id @id end |
#key ⇒ Object (readonly)
Returns the value of attribute key.
17084 17085 17086 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 17084 def key @key end |
#requested ⇒ Object (readonly)
Returns the value of attribute requested.
17084 17085 17086 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 17084 def requested @requested end |
#status ⇒ Object (readonly)
Returns the value of attribute status.
17084 17085 17086 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 17084 def status @status end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
17104 17105 17106 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 17104 def copy(incoming={}) Capture.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#to_hash ⇒ Object
17108 17109 17110 17111 17112 17113 17114 17115 17116 17117 17118 17119 17120 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 17108 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, :status => status.value } end |
#to_json ⇒ Object
17100 17101 17102 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 17100 def to_json JSON.dump(to_hash) end |