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.



15583
15584
15585
15586
15587
15588
15589
15590
15591
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15583

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))
  @attributes = (x = opts.delete(:attributes); x.nil? ? nil : HttpClient::Preconditions.assert_class('attributes', x, Hash).inject({}) { |h, d| h[d[0]] = HttpClient::Preconditions.assert_class('attributes', d[1], String); h })
end

Instance Attribute Details

#amountObject (readonly)

Returns the value of attribute amount.



15581
15582
15583
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15581

def amount
  @amount
end

#attributesObject (readonly)

Returns the value of attribute attributes.



15581
15582
15583
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15581

def attributes
  @attributes
end

#authorization_idObject (readonly)

Returns the value of attribute authorization_id.



15581
15582
15583
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15581

def authorization_id
  @authorization_id
end

#currencyObject (readonly)

Returns the value of attribute currency.



15581
15582
15583
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15581

def currency
  @currency
end

#keyObject (readonly)

Returns the value of attribute key.



15581
15582
15583
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15581

def key
  @key
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



15597
15598
15599
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15597

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

#to_hashObject



15601
15602
15603
15604
15605
15606
15607
15608
15609
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15601

def to_hash
  {
    :authorization_id => authorization_id,
    :key => key,
    :amount => amount,
    :currency => currency,
    :attributes => attributes.nil? ? nil : attributes
  }
end

#to_jsonObject



15593
15594
15595
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 15593

def to_json
  JSON.dump(to_hash)
end