Class: Ingenico::Connect::SDK::Domain::Payment::Order

Inherits:
Ingenico::Connect::SDK::DataObject show all
Defined in:
lib/ingenico/connect/sdk/domain/payment/order.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Ingenico::Connect::SDK::DataObject

new_from_hash

Instance Attribute Details

#additional_inputIngenico::Connect::SDK::Domain::Payment::AdditionalOrderInput



27
28
29
# File 'lib/ingenico/connect/sdk/domain/payment/order.rb', line 27

def additional_input
  @additional_input
end

#amount_of_moneyIngenico::Connect::SDK::Domain::Definitions::AmountOfMoney



27
28
29
# File 'lib/ingenico/connect/sdk/domain/payment/order.rb', line 27

def amount_of_money
  @amount_of_money
end

#customerIngenico::Connect::SDK::Domain::Payment::Customer



27
28
29
# File 'lib/ingenico/connect/sdk/domain/payment/order.rb', line 27

def customer
  @customer
end

#itemsObject

Deprecated.

Use shoppingCart.items instead



27
28
29
# File 'lib/ingenico/connect/sdk/domain/payment/order.rb', line 27

def items
  @items
end

#referencesIngenico::Connect::SDK::Domain::Payment::OrderReferences



27
28
29
# File 'lib/ingenico/connect/sdk/domain/payment/order.rb', line 27

def references
  @references
end

#sellerObject

Deprecated.

Use Merchant.seller instead



27
28
29
# File 'lib/ingenico/connect/sdk/domain/payment/order.rb', line 27

def seller
  @seller
end

#shippingIngenico::Connect::SDK::Domain::Payment::Shipping



27
28
29
# File 'lib/ingenico/connect/sdk/domain/payment/order.rb', line 27

def shipping
  @shipping
end

#shopping_cartIngenico::Connect::SDK::Domain::Payment::ShoppingCart



27
28
29
# File 'lib/ingenico/connect/sdk/domain/payment/order.rb', line 27

def shopping_cart
  @shopping_cart
end

Instance Method Details

#from_hash(hash) ⇒ Object



63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
# File 'lib/ingenico/connect/sdk/domain/payment/order.rb', line 63

def from_hash(hash)
  super
  if hash.has_key? 'additionalInput'
    raise TypeError, "value '%s' is not a Hash" % [hash['additionalInput']] unless hash['additionalInput'].is_a? Hash
    @additional_input = Ingenico::Connect::SDK::Domain::Payment::AdditionalOrderInput.new_from_hash(hash['additionalInput'])
  end
  if hash.has_key? 'amountOfMoney'
    raise TypeError, "value '%s' is not a Hash" % [hash['amountOfMoney']] unless hash['amountOfMoney'].is_a? Hash
    @amount_of_money = Ingenico::Connect::SDK::Domain::Definitions::AmountOfMoney.new_from_hash(hash['amountOfMoney'])
  end
  if hash.has_key? 'customer'
    raise TypeError, "value '%s' is not a Hash" % [hash['customer']] unless hash['customer'].is_a? Hash
    @customer = Ingenico::Connect::SDK::Domain::Payment::Customer.new_from_hash(hash['customer'])
  end
  if hash.has_key? 'items'
    raise TypeError, "value '%s' is not an Array" % [hash['items']] unless hash['items'].is_a? Array
    @items = []
    hash['items'].each do |e|
      @items << Ingenico::Connect::SDK::Domain::Payment::LineItem.new_from_hash(e)
    end
  end
  if hash.has_key? 'references'
    raise TypeError, "value '%s' is not a Hash" % [hash['references']] unless hash['references'].is_a? Hash
    @references = Ingenico::Connect::SDK::Domain::Payment::OrderReferences.new_from_hash(hash['references'])
  end
  if hash.has_key? 'seller'
    raise TypeError, "value '%s' is not a Hash" % [hash['seller']] unless hash['seller'].is_a? Hash
    @seller = Ingenico::Connect::SDK::Domain::Payment::Seller.new_from_hash(hash['seller'])
  end
  if hash.has_key? 'shipping'
    raise TypeError, "value '%s' is not a Hash" % [hash['shipping']] unless hash['shipping'].is_a? Hash
    @shipping = Ingenico::Connect::SDK::Domain::Payment::Shipping.new_from_hash(hash['shipping'])
  end
  if hash.has_key? 'shoppingCart'
    raise TypeError, "value '%s' is not a Hash" % [hash['shoppingCart']] unless hash['shoppingCart'].is_a? Hash
    @shopping_cart = Ingenico::Connect::SDK::Domain::Payment::ShoppingCart.new_from_hash(hash['shoppingCart'])
  end
end

#to_hHash



50
51
52
53
54
55
56
57
58
59
60
61
# File 'lib/ingenico/connect/sdk/domain/payment/order.rb', line 50

def to_h
  hash = super
  hash['additionalInput'] = @additional_input.to_h unless @additional_input.nil?
  hash['amountOfMoney'] = @amount_of_money.to_h unless @amount_of_money.nil?
  hash['customer'] = @customer.to_h unless @customer.nil?
  hash['items'] = @items.collect{|val| val.to_h} unless @items.nil?
  hash['references'] = @references.to_h unless @references.nil?
  hash['seller'] = @seller.to_h unless @seller.nil?
  hash['shipping'] = @shipping.to_h unless @shipping.nil?
  hash['shoppingCart'] = @shopping_cart.to_h unless @shopping_cart.nil?
  hash
end