class Burner::Library::Value::Transform

Transform the current value of the register through a Realize::Pipeline. This will transform the entire value, as opposed to the b/collection/transform job, which will iterate over each row/record in a dataset and transform each row/record.

Expected Payload input: anything. Payload output: anything.

Attributes

pipeline[R]

Public Class Methods

new(name: '', register: DEFAULT_REGISTER, separator: '', transformers: []) click to toggle source
Calls superclass method Burner::JobWithRegister::new
# File lib/burner/library/value/transform.rb, line 22
def initialize(name: '', register: DEFAULT_REGISTER, separator: '', transformers: [])
  super(name: name, register: register)

  resolver = Objectable.resolver(separator: separator)

  @pipeline = Realize::Pipeline.new(transformers, resolver: resolver)

  freeze
end

Public Instance Methods

perform(_output, payload) click to toggle source
# File lib/burner/library/value/transform.rb, line 32
def perform(_output, payload)
  payload[register] = pipeline.transform(payload[register], payload.time)
end