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



6547
6548
6549
6550
6551
6552
6553
6554
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 6547

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.



6545
6546
6547
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 6545

def amount
  @amount
end

#authorization_idObject (readonly)

Returns the value of attribute authorization_id.



6545
6546
6547
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 6545

def authorization_id
  @authorization_id
end

#currencyObject (readonly)

Returns the value of attribute currency.



6545
6546
6547
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 6545

def currency
  @currency
end

#keyObject (readonly)

Returns the value of attribute key.



6545
6546
6547
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 6545

def key
  @key
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



6560
6561
6562
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 6560

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

#to_hashObject



6564
6565
6566
6567
6568
6569
6570
6571
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 6564

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

#to_jsonObject



6556
6557
6558
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 6556

def to_json
  JSON.dump(to_hash)
end