package org.embulk.standards;
import java.util.List;
import org.embulk.config.ConfigSource;
import org.embulk.config.TaskSource;
import org.embulk.config.ConfigDiff;
import org.embulk.config.TaskReport;
import org.embulk.spi.Schema;
import org.embulk.spi.Page;
import org.embulk.spi.Exec;
import org.embulk.spi.OutputPlugin;
import org.embulk.spi.TransactionalPageOutput;
public class NullOutputPlugin
implements OutputPlugin
{
@Override
public ConfigDiff transaction(ConfigSource config,
Schema schema, int taskCount,
OutputPlugin.Control control)
{
return resume(Exec.newTaskSource(), schema, taskCount, control);
}
public ConfigDiff resume(TaskSource taskSource,
Schema schema, int taskCount,
OutputPlugin.Control control)
{
control.run(taskSource);
return Exec.newConfigDiff();
}
public void cleanup(TaskSource taskSource,
Schema schema, int taskCount,
List<TaskReport> successTaskReports)
{ }
@Override
public TransactionalPageOutput open(TaskSource taskSource, Schema schema, int taskIndex)
{
return new TransactionalPageOutput() {
public void add(Page page)
{
page.release();
}
public void finish() { }
public void close() { }
public void abort() { }
public TaskReport commit()
{
return Exec.newTaskReport();
}
};
}
}