Sha256: 925910fb3e6def38d6e60ee7a08b508fb2edf04184ff88e8a52864da2e89773c
Contents?: true
Size: 984 Bytes
Versions: 3
Compression:
Stored size: 984 Bytes
Contents
module Embulk module Plugin class FilterExample < FilterPlugin # filter plugin file name must be: embulk/filter_<name>.rb Plugin.register_filter('example', self) def self.transaction(config, in_schema, &control) task = { 'key' => config.param('key', :string, default: "filter_key"), 'value' => config.param('value', :string, default: "filter_value") } idx = in_schema.size out_columns = in_schema + [Column.new(idx, task['key'], :string)] puts "Example filter started." yield(task, out_columns) puts "Example filter finished." end def initialize(task, in_schema, out_schema, page_builder) super @value = task['value'] end def close end def add(page) page.each do |record| @page_builder.add(record + [@value]) end end def finish @page_builder.finish end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
embulk-0.3.2 | lib/embulk/data/bundle/embulk/filter_example.rb |
embulk-0.3.1 | lib/embulk/data/bundle/embulk/filter_example.rb |
embulk-0.3.0 | lib/embulk/data/bundle/embulk/filter_example.rb |