class Embulk::Plugin::FilterConvert
Public Class Methods
new(task, in_schema, out_schema, page_builder)
click to toggle source
Calls superclass method
# File lib/embulk/filter_convert.rb, line 24 def initialize(task, in_schema, out_schema, page_builder) super @columns = task['columns'] end
transaction(config, in_schema) { |task, out_columns| ... }
click to toggle source
# File lib/embulk/filter_convert.rb, line 8 def self.transaction(config, in_schema, &control) task = { 'columns' => config.param('columns', :array), } out_columns = [] record = 0 task['columns'].each do |column| out_columns << Column.new(record, column['name'], column['type'].to_sym) record += 1 end yield(task, out_columns) end
Public Instance Methods
add(page)
click to toggle source
# File lib/embulk/filter_convert.rb, line 32 def add(page) page.each do |record| hash = Hash[in_schema.names.zip(record)] out_record = [] @columns.each do |column| out_record << hash[column['name']] end @page_builder.add(out_record) end end
close()
click to toggle source
# File lib/embulk/filter_convert.rb, line 29 def close end
finish()
click to toggle source
# File lib/embulk/filter_convert.rb, line 43 def finish @page_builder.finish end