Class: NetSuite::Records::MatrixOptionList

Inherits:
Object
  • Object
show all
Defined in:
lib/netsuite/records/matrix_option_list.rb

Instance Method Summary collapse

Constructor Details

#initialize(attributes = {}) ⇒ MatrixOptionList

Deals with both hash and arrays of attributes

Hash:

<listAcct:matrixOptionList>
  <listAcct:matrixOption internalId="47" scriptId="custitem15">
    <platformCore:value internalId="2" typeId="36"/>
  </listAcct:matrixOption>
</listAcct:matrixOptionList>

Array:

<listAcct:matrixOptionList>
  <listAcct:matrixOption internalId="45" scriptId="custitem13">
    <platformCore:value internalId="4" typeId="28"/>
  </listAcct:matrixOption>
  <listAcct:matrixOption internalId="46" scriptId="custitem14">
    <platformCore:value internalId="1" typeId="29"/>
  </listAcct:matrixOption>
</listAcct:matrixOptionList>


25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
# File 'lib/netsuite/records/matrix_option_list.rb', line 25

def initialize(attributes = {})
  case attributes[:matrix_option]
  when Hash
    options << OpenStruct.new(
      type_id: attributes[:matrix_option][:value][:'@type_id'],
      value_id: attributes[:matrix_option][:value][:'@internal_id']
    )
  when Array
    attributes[:matrix_option].each do |option|
      options << OpenStruct.new(
        type_id: option[:value][:'@type_id'],
        value_id: option[:value][:'@internal_id']
      )
    end
  end
end

Instance Method Details

#optionsObject



42
43
44
# File 'lib/netsuite/records/matrix_option_list.rb', line 42

def options
  @options ||= []
end