Class: DataForge::Transformation::RubyTransformation
- Inherits:
-
TransformationBase
- Object
- TransformationBase
- DataForge::Transformation::RubyTransformation
- Defined in:
- lib/data_forge/transformation/ruby_transformation.rb
Class Method Summary collapse
Instance Method Summary collapse
- #execute ⇒ Object
-
#initialize(record_reader, record_writers, &transformation_block) ⇒ RubyTransformation
constructor
A new instance of RubyTransformation.
Constructor Details
#initialize(record_reader, record_writers, &transformation_block) ⇒ RubyTransformation
Returns a new instance of RubyTransformation.
16 17 18 |
# File 'lib/data_forge/transformation/ruby_transformation.rb', line 16 def initialize(record_reader, record_writers, &transformation_block) @record_reader, @record_writers, @transformation_block = record_reader, record_writers, transformation_block end |
Class Method Details
.from_input(source_name, options = {}, &block) ⇒ Object
6 7 8 9 10 11 |
# File 'lib/data_forge/transformation/ruby_transformation.rb', line 6 def from_input(source_name, = {}, &block) reader = File.reader_for source_name writers = Array(.fetch :into, source_name).map { |target_name| File.writer_for target_name } new reader, writers, &block end |
Instance Method Details
#execute ⇒ Object
22 23 24 25 26 27 28 29 |
# File 'lib/data_forge/transformation/ruby_transformation.rb', line 22 def execute with_writers @record_writers do |writers| context = RubyTransformationContext.new writers @record_reader.each_record do |record| context.instance_exec record, &@transformation_block end end end |