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.



8526
8527
8528
8529
8530
8531
8532
8533
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 8526

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.



8524
8525
8526
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 8524

def amount
  @amount
end

#authorization_idObject (readonly)

Returns the value of attribute authorization_id.



8524
8525
8526
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 8524

def authorization_id
  @authorization_id
end

#currencyObject (readonly)

Returns the value of attribute currency.



8524
8525
8526
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 8524

def currency
  @currency
end

#keyObject (readonly)

Returns the value of attribute key.



8524
8525
8526
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 8524

def key
  @key
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



8539
8540
8541
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 8539

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

#to_hashObject



8543
8544
8545
8546
8547
8548
8549
8550
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 8543

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

#to_jsonObject



8535
8536
8537
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 8535

def to_json
  JSON.dump(to_hash)
end