Class: Io::Flow::V0::Models::CaptureForm

Inherits:
Object
  • Object
show all
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

Instance Method Summary collapse

Constructor Details

#initialize(incoming = {}) ⇒ CaptureForm

Returns a new instance of CaptureForm.



10132
10133
10134
10135
10136
10137
10138
10139
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 10132

def initialize(incoming={})
  opts = HttpClient::Helper.symbolize_keys(incoming)
  HttpClient::Preconditions.require_keys(opts, [:authorization_id], 'CaptureForm')
  @authorization_id = HttpClient::Preconditions.assert_class('authorization_id', opts.delete(:authorization_id), String)
  @key = (x = opts.delete(:key); x.nil? ? nil : HttpClient::Preconditions.assert_class('key', x, String))
  @amount = (x = opts.delete(:amount); x.nil? ? nil : HttpClient::Preconditions.assert_class('amount', HttpClient::Helper.to_big_decimal(x), BigDecimal))
  @currency = (x = opts.delete(:currency); x.nil? ? nil : HttpClient::Preconditions.assert_class('currency', x, String))
end

Instance Attribute Details

#amount ⇒ Object (readonly)

Returns the value of attribute amount.



10130
10131
10132
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 10130

def amount
  @amount
end

#authorization_id ⇒ Object (readonly)

Returns the value of attribute authorization_id.



10130
10131
10132
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 10130

def authorization_id
  @authorization_id
end

#currency ⇒ Object (readonly)

Returns the value of attribute currency.



10130
10131
10132
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 10130

def currency
  @currency
end

#key ⇒ Object (readonly)

Returns the value of attribute key.



10130
10131
10132
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 10130

def key
  @key
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



10145
10146
10147
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 10145

def copy(incoming={})
  CaptureForm.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
end

#to_hash ⇒ Object



10149
10150
10151
10152
10153
10154
10155
10156
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 10149

def to_hash
  {
    :authorization_id => authorization_id,
    :key => key,
    :amount => amount,
    :currency => currency
  }
end

#to_json ⇒ Object



10141
10142
10143
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 10141

def to_json
  JSON.dump(to_hash)
end