class Embulk::Plugin::FilterGrep
Public Class Methods
new(task, in_schema, out_schema, page_builder)
click to toggle source
Calls superclass method
# File lib/embulk/filter_grep.rb, line 20 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_grep.rb, line 8 def self.transaction(config, in_schema, &control) task = { 'columns' => config.param('columns', :array), } out_columns = in_schema puts "Extranction filter started." yield(task, out_columns) puts "Extranction filter finished." end
Public Instance Methods
add(page)
click to toggle source
# File lib/embulk/filter_grep.rb, line 28 def add(page) page.each do |record| hash = Hash[in_schema.names.zip(record)] @columns.each do |col| regEx = col['regexp'] if hash[col['name']] =~ /#{regEx}/ @page_builder.add(record) end end end end
close()
click to toggle source
# File lib/embulk/filter_grep.rb, line 25 def close end
finish()
click to toggle source
# File lib/embulk/filter_grep.rb, line 40 def finish @page_builder.finish end