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.



10955
10956
10957
10958
10959
10960
10961
10962
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 10955

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.



10953
10954
10955
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 10953

def amount
  @amount
end

#authorization_idObject (readonly)

Returns the value of attribute authorization_id.



10953
10954
10955
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 10953

def authorization_id
  @authorization_id
end

#currencyObject (readonly)

Returns the value of attribute currency.



10953
10954
10955
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 10953

def currency
  @currency
end

#keyObject (readonly)

Returns the value of attribute key.



10953
10954
10955
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 10953

def key
  @key
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



10968
10969
10970
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 10968

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

#to_hashObject



10972
10973
10974
10975
10976
10977
10978
10979
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 10972

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

#to_jsonObject



10964
10965
10966
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 10964

def to_json
  JSON.dump(to_hash)
end