Class: Ingenico::Connect::SDK::Domain::Product::PaymentProductGroup

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

Direct Known Subclasses

PaymentProductGroupResponse

Instance Attribute Summary collapse

Instance Method Summary collapse

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

new_from_hash

Instance Attribute Details

#accounts_on_fileArray<Ingenico::Connect::SDK::Domain::Product::AccountOnFile>



20
21
22
# File 'lib/ingenico/connect/sdk/domain/product/payment_product_group.rb', line 20

def accounts_on_file
  @accounts_on_file
end

#allows_installmentstrue/false



20
21
22
# File 'lib/ingenico/connect/sdk/domain/product/payment_product_group.rb', line 20

def allows_installments
  @allows_installments
end

#device_fingerprint_enabledtrue/false



20
21
22
# File 'lib/ingenico/connect/sdk/domain/product/payment_product_group.rb', line 20

def device_fingerprint_enabled
  @device_fingerprint_enabled
end

#display_hintsIngenico::Connect::SDK::Domain::Product::PaymentProductDisplayHints



20
21
22
# File 'lib/ingenico/connect/sdk/domain/product/payment_product_group.rb', line 20

def display_hints
  @display_hints
end

#fieldsArray<Ingenico::Connect::SDK::Domain::Product::PaymentProductField>



20
21
22
# File 'lib/ingenico/connect/sdk/domain/product/payment_product_group.rb', line 20

def fields
  @fields
end

#idString



20
21
22
# File 'lib/ingenico/connect/sdk/domain/product/payment_product_group.rb', line 20

def id
  @id
end

Instance Method Details

#from_hash(hash) ⇒ Object



46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
# File 'lib/ingenico/connect/sdk/domain/product/payment_product_group.rb', line 46

def from_hash(hash)
  super
  if hash.has_key? 'accountsOnFile'
    raise TypeError, "value '%s' is not an Array" % [hash['accountsOnFile']] unless hash['accountsOnFile'].is_a? Array
    @accounts_on_file = []
    hash['accountsOnFile'].each do |e|
      @accounts_on_file << Ingenico::Connect::SDK::Domain::Product::AccountOnFile.new_from_hash(e)
    end
  end
  if hash.has_key? 'allowsInstallments'
    @allows_installments = hash['allowsInstallments']
  end
  if hash.has_key? 'deviceFingerprintEnabled'
    @device_fingerprint_enabled = hash['deviceFingerprintEnabled']
  end
  if hash.has_key? 'displayHints'
    raise TypeError, "value '%s' is not a Hash" % [hash['displayHints']] unless hash['displayHints'].is_a? Hash
    @display_hints = Ingenico::Connect::SDK::Domain::Product::PaymentProductDisplayHints.new_from_hash(hash['displayHints'])
  end
  if hash.has_key? 'fields'
    raise TypeError, "value '%s' is not an Array" % [hash['fields']] unless hash['fields'].is_a? Array
    @fields = []
    hash['fields'].each do |e|
      @fields << Ingenico::Connect::SDK::Domain::Product::PaymentProductField.new_from_hash(e)
    end
  end
  if hash.has_key? 'id'
    @id = hash['id']
  end
end

#to_hHash



35
36
37
38
39
40
41
42
43
44
# File 'lib/ingenico/connect/sdk/domain/product/payment_product_group.rb', line 35

def to_h
  hash = super
  hash['accountsOnFile'] = @accounts_on_file.collect{|val| val.to_h} unless @accounts_on_file.nil?
  hash['allowsInstallments'] = @allows_installments unless @allows_installments.nil?
  hash['deviceFingerprintEnabled'] = @device_fingerprint_enabled unless @device_fingerprint_enabled.nil?
  hash['displayHints'] = @display_hints.to_h unless @display_hints.nil?
  hash['fields'] = @fields.collect{|val| val.to_h} unless @fields.nil?
  hash['id'] = @id unless @id.nil?
  hash
end