class Embulk::Filter::Affix

Public Class Methods

transaction(config, in_schema) { |task, out_columns| ... } click to toggle source
# File lib/embulk/filter/affix.rb, line 7
def self.transaction(config, in_schema, &control)
  task = {
    "affix" => config.param("affix", :string, default: "suffix"),
  }

  columns = []

  in_schema.each do |record|
    if task['affix'] == "suffix" then
      name = record.name + "_" + record.type.to_s[0]
    elsif task['affix'] == "prefix" then
      name = record.type.to_s[0]  + "_" + record.name
    else
      name = record.name
    end
    column = Column.new(nil, name, record.type)
    columns.push(column)
  end

  out_columns = columns

  yield(task, out_columns)
end

Public Instance Methods

add(page) click to toggle source
# File lib/embulk/filter/affix.rb, line 39
def add(page)
  page.each do |record|
    page_builder.add(record)
  end
end
close() click to toggle source
# File lib/embulk/filter/affix.rb, line 36
def close
end
finish() click to toggle source
# File lib/embulk/filter/affix.rb, line 45
def finish
  page_builder.finish
end
init() click to toggle source
# File lib/embulk/filter/affix.rb, line 31
def init
  # initialization code:
  @affix = task["affix"]
end