Class: Io::Flow::V0::Models::OrderPayment

Inherits:
Object
  • Object
show all
Defined in:
lib/flow_commerce/flow_api_v0_client.rb

Overview

An Order Payment represents an individual payment applied to an order. The type of the payment can be used to further lookup transaction level detail

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(incoming = {}) ⇒ OrderPayment

Returns a new instance of OrderPayment.



20582
20583
20584
20585
20586
20587
20588
20589
20590
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 20582

def initialize(incoming={})
  opts = HttpClient::Helper.symbolize_keys(incoming)
  HttpClient::Preconditions.require_keys(opts, [:id, :type, :reference, :description, :total], 'OrderPayment')
  @id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
  @type = (x = opts.delete(:type); x.is_a?(::Io::Flow::V0::Models::OrderPaymentType) ? x : ::Io::Flow::V0::Models::OrderPaymentType.apply(x))
  @reference = HttpClient::Preconditions.assert_class('reference', opts.delete(:reference), String)
  @description = HttpClient::Preconditions.assert_class('description', opts.delete(:description), String)
  @total = (x = opts.delete(:total); x.is_a?(::Io::Flow::V0::Models::PriceWithBase) ? x : ::Io::Flow::V0::Models::PriceWithBase.new(x))
end

Instance Attribute Details

#descriptionObject (readonly)

Returns the value of attribute description.



20580
20581
20582
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 20580

def description
  @description
end

#idObject (readonly)

Returns the value of attribute id.



20580
20581
20582
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 20580

def id
  @id
end

#referenceObject (readonly)

Returns the value of attribute reference.



20580
20581
20582
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 20580

def reference
  @reference
end

#totalObject (readonly)

Returns the value of attribute total.



20580
20581
20582
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 20580

def total
  @total
end

#typeObject (readonly)

Returns the value of attribute type.



20580
20581
20582
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 20580

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



20596
20597
20598
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 20596

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

#to_hashObject



20600
20601
20602
20603
20604
20605
20606
20607
20608
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 20600

def to_hash
  {
    :id => id,
    :type => type.value,
    :reference => reference,
    :description => description,
    :total => total.to_hash
  }
end

#to_jsonObject



20592
20593
20594
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 20592

def to_json
  JSON.dump(to_hash)
end