Method: Transform::Read.instance

Defined in:
lib/transform/read.rb

.instance(raw_data, cls, transformer_reflection = nil) ⇒ Object



23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# File 'lib/transform/read.rb', line 23

def self.instance(raw_data, cls, transformer_reflection=nil)
  logger.trace { "Transforming raw data to instance" }
  logger.trace(tags: [:data, :raw_data]) { raw_data.pretty_inspect }

  if transformer_reflection.nil?
    transformer_reflection = transformer_reflection(cls)
  end

  transformer = transformer_reflection.target

  instance = get_instance(transformer, raw_data, cls)

  logger.debug { "Transformed raw data to instance" }
  logger.debug(tags: [:data, :instance]) { instance.pretty_inspect }

  instance
end