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.



7851
7852
7853
7854
7855
7856
7857
7858
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 7851

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

#amountObject (readonly)

Returns the value of attribute amount.



7849
7850
7851
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 7849

def amount
  @amount
end

#authorization_idObject (readonly)

Returns the value of attribute authorization_id.



7849
7850
7851
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 7849

def authorization_id
  @authorization_id
end

#currencyObject (readonly)

Returns the value of attribute currency.



7849
7850
7851
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 7849

def currency
  @currency
end

#keyObject (readonly)

Returns the value of attribute key.



7849
7850
7851
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 7849

def key
  @key
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



7864
7865
7866
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 7864

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

#to_hashObject



7868
7869
7870
7871
7872
7873
7874
7875
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 7868

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

#to_jsonObject



7860
7861
7862
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 7860

def to_json
  JSON.dump(to_hash)
end