Class: RemoteTable::Transformer

Inherits:
Object
  • Object
show all
Defined in:
lib/remote_table/transformer.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(t) ⇒ Transformer

Returns a new instance of Transformer.



4
5
6
# File 'lib/remote_table/transformer.rb', line 4

def initialize(t)
  @t = t
end

Instance Attribute Details

#tObject (readonly)

Returns the value of attribute t.



3
4
5
# File 'lib/remote_table/transformer.rb', line 3

def t
  @t
end

Instance Method Details

#legacy_transformerObject



15
16
17
18
19
20
21
# File 'lib/remote_table/transformer.rb', line 15

def legacy_transformer
  return @legacy_transformer if @legacy_transformer
  return unless t.options['transform']
  transform_options = t.options['transform'].dup
  transform_options.stringify_keys!
  @legacy_transformer = transform_options['class'].new transform_options.except('class')
end

#transform(row) ⇒ Object

eventually this will support a different way of specifying a transformer



8
9
10
11
12
13
14
# File 'lib/remote_table/transformer.rb', line 8

def transform(row)
  if legacy_transformer
    legacy_transformer.apply row
  else
    row
  end
end