Sha256: 4c859fd43b5961ae0d9b64438ac603f727755a13e81300965cedde4ee04c89f3
Contents?: true
Size: 1.59 KB
Versions: 62
Compression:
Stored size: 1.59 KB
Contents
module Embulk module Input class <%= ruby_class_name %> < InputPlugin Plugin.register_input(<%= 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, "value", :double), ] resume(task, columns, 1, &control) end def self.resume(task, columns, count, &control) task_reports = yield(task, columns, count) next_config_diff = {} return next_config_diff end # TODO #def self.guess(config) # sample_records = [ # {"example"=>"a", "column"=>1, "value"=>0.1}, # {"example"=>"a", "column"=>2, "value"=>0.2}, # ] # columns = Guess::SchemaGuess.from_hash_records(sample_records) # return {"columns" => columns} #end def init # initialization code: @option1 = task["option1"] @option2 = task["option2"] @option3 = task["option3"] end def run page_builder.add(["example-value", 1, 0.1]) page_builder.add(["example-value", 2, 0.2]) page_builder.finish task_report = {} return task_report end end end end
Version data entries
62 entries across 62 versions & 1 rubygems