Sha256: cc8025a4da211a0184bfca243f417285831d8b13b73f17bfa250c82b39d09168
Contents?: true
Size: 1.15 KB
Versions: 73
Compression:
Stored size: 1.15 KB
Contents
module Embulk module Parser class <%= ruby_class_name %> < ParserPlugin Plugin.register_parser(<%= name.dump %>, self) def self.transaction(config, &control) # configuration code: task = { "option1" => config.param("option1", :integer), # integer, required "option2" => config.param("option2", :string, default: "myvalue"), # string, optional "option3" => config.param("option3", :string, default: nil), # string, optional } columns = [ Column.new(0, "example", :string), Column.new(1, "column", :long), Column.new(2, "name", :double), ] yield(task, columns) end def init # initialization code: @option1 = task["option1"] @option2 = task["option2"] @option3 = task["option3"] end def run(file_input) while file = file_input.next_file file.each do |buffer| # parsering code record = ["col1", 2, 3.0] page_builder.add(record) end end page_builder.finish end end end end
Version data entries
73 entries across 73 versions & 1 rubygems