src/main/java/org/embulk/output/jdbc/setter/ColumnSetter.java in embulk-output-jdbc-0.2.4 vs src/main/java/org/embulk/output/jdbc/setter/ColumnSetter.java in embulk-output-jdbc-0.3.0
- old
+ new
@@ -1,29 +1,26 @@
package org.embulk.output.jdbc.setter;
import java.io.IOException;
import java.sql.SQLException;
import org.embulk.spi.Column;
-import org.embulk.spi.ColumnVisitor;
-import org.embulk.spi.PageReader;
import org.embulk.spi.time.Timestamp;
import org.embulk.output.jdbc.JdbcColumn;
import org.embulk.output.jdbc.BatchInsert;
public abstract class ColumnSetter
- implements ColumnVisitor
{
protected final BatchInsert batch;
- protected final PageReader pageReader;
protected final JdbcColumn column;
+ protected final DefaultValueSetter defaultValue;
- public ColumnSetter(BatchInsert batch, PageReader pageReader,
- JdbcColumn column)
+ public ColumnSetter(BatchInsert batch, JdbcColumn column,
+ DefaultValueSetter defaultValue)
{
this.batch = batch;
- this.pageReader = pageReader;
this.column = column;
+ this.defaultValue = defaultValue;
}
public JdbcColumn getColumn()
{
return column;
@@ -32,95 +29,17 @@
public int getSqlType()
{
return column.getSqlType();
}
- public void booleanColumn(Column column)
- {
- try {
- if (pageReader.isNull(column)) {
- nullValue();
- } else {
- booleanValue(pageReader.getBoolean(column));
- }
- } catch (IOException | SQLException ex) {
- // TODO exception class
- throw new RuntimeException(ex);
- }
- }
+ public abstract void nullValue() throws IOException, SQLException;
- public void longColumn(Column column)
- {
- try {
- if (pageReader.isNull(column)) {
- nullValue();
- } else {
- longValue(pageReader.getLong(column));
- }
- } catch (IOException | SQLException ex) {
- // TODO exception class
- throw new RuntimeException(ex);
- }
- }
+ public abstract void booleanValue(boolean v) throws IOException, SQLException;
- public void doubleColumn(Column column)
- {
- try {
- if (pageReader.isNull(column)) {
- nullValue();
- } else {
- doubleValue(pageReader.getDouble(column));
- }
- } catch (IOException | SQLException ex) {
- // TODO exception class
- throw new RuntimeException(ex);
- }
- }
+ public abstract void longValue(long v) throws IOException, SQLException;
- public void stringColumn(Column column)
- {
- try {
- if (pageReader.isNull(column)) {
- nullValue();
- } else {
- stringValue(pageReader.getString(column));
- }
- } catch (IOException | SQLException ex) {
- // TODO exception class
- throw new RuntimeException(ex);
- }
- }
+ public abstract void doubleValue(double v) throws IOException, SQLException;
- public void timestampColumn(Column column)
- {
- try {
- if (pageReader.isNull(column)) {
- nullValue();
- } else {
- timestampValue(pageReader.getTimestamp(column));
- }
- } catch (IOException | SQLException ex) {
- // TODO exception class
- throw new RuntimeException(ex);
- }
- }
+ public abstract void stringValue(String v) throws IOException, SQLException;
- protected void nullValue() throws IOException, SQLException
- {
- try {
- batch.setNull(getSqlType());
- } catch (IOException | SQLException ex) {
- // TODO exception class
- throw new RuntimeException(ex);
- }
- }
-
- protected abstract void booleanValue(boolean v) throws IOException, SQLException;
-
- protected abstract void longValue(long v) throws IOException, SQLException;
-
- protected abstract void doubleValue(double v) throws IOException, SQLException;
-
- protected abstract void stringValue(String v) throws IOException, SQLException;
-
- protected abstract void timestampValue(Timestamp v) throws IOException, SQLException;
+ public abstract void timestampValue(Timestamp v) throws IOException, SQLException;
}