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



22063
22064
22065
22066
22067
22068
22069
22070
22071
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22063

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.



22061
22062
22063
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22061

def description
  @description
end

#idObject (readonly)

Returns the value of attribute id.



22061
22062
22063
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22061

def id
  @id
end

#referenceObject (readonly)

Returns the value of attribute reference.



22061
22062
22063
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22061

def reference
  @reference
end

#totalObject (readonly)

Returns the value of attribute total.



22061
22062
22063
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22061

def total
  @total
end

#typeObject (readonly)

Returns the value of attribute type.



22061
22062
22063
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22061

def type
  @type
end

Instance Method Details

#copy(incoming = {}) ⇒ Object



22077
22078
22079
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22077

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

#to_hashObject



22081
22082
22083
22084
22085
22086
22087
22088
22089
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22081

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

#to_jsonObject



22073
22074
22075
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 22073

def to_json
  JSON.dump(to_hash)
end