embulk-output-jdbc 0.4.0 → 0.4.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (39) hide show
  1. checksums.yaml +4 -4
  2. data/build.gradle +2 -2
  3. data/classpath/{embulk-output-jdbc-0.4.0.jar → embulk-output-jdbc-0.4.1.jar} +0 -0
  4. data/lib/embulk/output/jdbc.rb +3 -3
  5. data/src/main/java/org/embulk/output/JdbcOutputPlugin.java +138 -138
  6. data/src/main/java/org/embulk/output/jdbc/AbstractJdbcOutputPlugin.java +973 -972
  7. data/src/main/java/org/embulk/output/jdbc/BatchInsert.java +53 -53
  8. data/src/main/java/org/embulk/output/jdbc/JdbcColumn.java +116 -116
  9. data/src/main/java/org/embulk/output/jdbc/JdbcColumnOption.java +34 -34
  10. data/src/main/java/org/embulk/output/jdbc/JdbcOutputConnection.java +492 -492
  11. data/src/main/java/org/embulk/output/jdbc/JdbcOutputConnector.java +8 -8
  12. data/src/main/java/org/embulk/output/jdbc/JdbcSchema.java +60 -60
  13. data/src/main/java/org/embulk/output/jdbc/JdbcUtils.java +155 -155
  14. data/src/main/java/org/embulk/output/jdbc/StandardBatchInsert.java +200 -200
  15. data/src/main/java/org/embulk/output/jdbc/ToString.java +54 -54
  16. data/src/main/java/org/embulk/output/jdbc/ToStringMap.java +35 -35
  17. data/src/main/java/org/embulk/output/jdbc/setter/BigDecimalColumnSetter.java +70 -70
  18. data/src/main/java/org/embulk/output/jdbc/setter/BooleanColumnSetter.java +54 -54
  19. data/src/main/java/org/embulk/output/jdbc/setter/ByteColumnSetter.java +76 -76
  20. data/src/main/java/org/embulk/output/jdbc/setter/ColumnSetter.java +45 -45
  21. data/src/main/java/org/embulk/output/jdbc/setter/ColumnSetterFactory.java +196 -196
  22. data/src/main/java/org/embulk/output/jdbc/setter/ColumnSetterVisitor.java +96 -96
  23. data/src/main/java/org/embulk/output/jdbc/setter/DefaultValueSetter.java +48 -48
  24. data/src/main/java/org/embulk/output/jdbc/setter/DoubleColumnSetter.java +61 -61
  25. data/src/main/java/org/embulk/output/jdbc/setter/FloatColumnSetter.java +61 -61
  26. data/src/main/java/org/embulk/output/jdbc/setter/IntColumnSetter.java +76 -76
  27. data/src/main/java/org/embulk/output/jdbc/setter/LongColumnSetter.java +72 -72
  28. data/src/main/java/org/embulk/output/jdbc/setter/NStringColumnSetter.java +59 -59
  29. data/src/main/java/org/embulk/output/jdbc/setter/NullColumnSetter.java +53 -53
  30. data/src/main/java/org/embulk/output/jdbc/setter/NullDefaultValueSetter.java +105 -105
  31. data/src/main/java/org/embulk/output/jdbc/setter/PassThroughColumnSetter.java +59 -59
  32. data/src/main/java/org/embulk/output/jdbc/setter/ShortColumnSetter.java +76 -76
  33. data/src/main/java/org/embulk/output/jdbc/setter/SkipColumnSetter.java +43 -43
  34. data/src/main/java/org/embulk/output/jdbc/setter/SqlDateColumnSetter.java +59 -59
  35. data/src/main/java/org/embulk/output/jdbc/setter/SqlTimeColumnSetter.java +59 -59
  36. data/src/main/java/org/embulk/output/jdbc/setter/SqlTimestampColumnSetter.java +58 -58
  37. data/src/main/java/org/embulk/output/jdbc/setter/StringColumnSetter.java +59 -59
  38. data/src/test/java/org/embulk/output/TestJdbcOutputPlugin.java +5 -5
  39. metadata +3 -3
@@ -1,105 +1,105 @@
1
- package org.embulk.output.jdbc.setter;
2
-
3
- import java.io.IOException;
4
- import java.sql.SQLException;
5
- import org.embulk.output.jdbc.JdbcColumn;
6
- import org.embulk.output.jdbc.BatchInsert;
7
-
8
- public class NullDefaultValueSetter
9
- extends DefaultValueSetter
10
- {
11
- public NullDefaultValueSetter(BatchInsert batch, JdbcColumn column)
12
- {
13
- super(batch, column);
14
- }
15
-
16
- @Override
17
- public void setNull() throws IOException, SQLException
18
- {
19
- batch.setNull(column.getSqlType());
20
- }
21
-
22
- @Override
23
- public void setBoolean() throws IOException, SQLException
24
- {
25
- batch.setNull(column.getSqlType());
26
- }
27
-
28
- @Override
29
- public void setByte() throws IOException, SQLException
30
- {
31
- batch.setNull(column.getSqlType());
32
- }
33
-
34
- @Override
35
- public void setShort() throws IOException, SQLException
36
- {
37
- batch.setNull(column.getSqlType());
38
- }
39
-
40
- @Override
41
- public void setInt() throws IOException, SQLException
42
- {
43
- batch.setNull(column.getSqlType());
44
- }
45
-
46
- @Override
47
- public void setLong() throws IOException, SQLException
48
- {
49
- batch.setNull(column.getSqlType());
50
- }
51
-
52
- @Override
53
- public void setFloat() throws IOException, SQLException
54
- {
55
- batch.setNull(column.getSqlType());
56
- }
57
-
58
- @Override
59
- public void setDouble() throws IOException, SQLException
60
- {
61
- batch.setNull(column.getSqlType());
62
- }
63
-
64
- @Override
65
- public void setBigDecimal() throws IOException, SQLException
66
- {
67
- batch.setNull(column.getSqlType());
68
- }
69
-
70
- @Override
71
- public void setString() throws IOException, SQLException
72
- {
73
- batch.setNull(column.getSqlType());
74
- }
75
-
76
- @Override
77
- public void setNString() throws IOException, SQLException
78
- {
79
- batch.setNull(column.getSqlType());
80
- }
81
-
82
- @Override
83
- public void setBytes() throws IOException, SQLException
84
- {
85
- batch.setNull(column.getSqlType());
86
- }
87
-
88
- @Override
89
- public void setSqlDate() throws IOException, SQLException
90
- {
91
- batch.setNull(column.getSqlType());
92
- }
93
-
94
- @Override
95
- public void setSqlTime() throws IOException, SQLException
96
- {
97
- batch.setNull(column.getSqlType());
98
- }
99
-
100
- @Override
101
- public void setSqlTimestamp() throws IOException, SQLException
102
- {
103
- batch.setNull(column.getSqlType());
104
- }
105
- }
1
+ package org.embulk.output.jdbc.setter;
2
+
3
+ import java.io.IOException;
4
+ import java.sql.SQLException;
5
+ import org.embulk.output.jdbc.JdbcColumn;
6
+ import org.embulk.output.jdbc.BatchInsert;
7
+
8
+ public class NullDefaultValueSetter
9
+ extends DefaultValueSetter
10
+ {
11
+ public NullDefaultValueSetter(BatchInsert batch, JdbcColumn column)
12
+ {
13
+ super(batch, column);
14
+ }
15
+
16
+ @Override
17
+ public void setNull() throws IOException, SQLException
18
+ {
19
+ batch.setNull(column.getSqlType());
20
+ }
21
+
22
+ @Override
23
+ public void setBoolean() throws IOException, SQLException
24
+ {
25
+ batch.setNull(column.getSqlType());
26
+ }
27
+
28
+ @Override
29
+ public void setByte() throws IOException, SQLException
30
+ {
31
+ batch.setNull(column.getSqlType());
32
+ }
33
+
34
+ @Override
35
+ public void setShort() throws IOException, SQLException
36
+ {
37
+ batch.setNull(column.getSqlType());
38
+ }
39
+
40
+ @Override
41
+ public void setInt() throws IOException, SQLException
42
+ {
43
+ batch.setNull(column.getSqlType());
44
+ }
45
+
46
+ @Override
47
+ public void setLong() throws IOException, SQLException
48
+ {
49
+ batch.setNull(column.getSqlType());
50
+ }
51
+
52
+ @Override
53
+ public void setFloat() throws IOException, SQLException
54
+ {
55
+ batch.setNull(column.getSqlType());
56
+ }
57
+
58
+ @Override
59
+ public void setDouble() throws IOException, SQLException
60
+ {
61
+ batch.setNull(column.getSqlType());
62
+ }
63
+
64
+ @Override
65
+ public void setBigDecimal() throws IOException, SQLException
66
+ {
67
+ batch.setNull(column.getSqlType());
68
+ }
69
+
70
+ @Override
71
+ public void setString() throws IOException, SQLException
72
+ {
73
+ batch.setNull(column.getSqlType());
74
+ }
75
+
76
+ @Override
77
+ public void setNString() throws IOException, SQLException
78
+ {
79
+ batch.setNull(column.getSqlType());
80
+ }
81
+
82
+ @Override
83
+ public void setBytes() throws IOException, SQLException
84
+ {
85
+ batch.setNull(column.getSqlType());
86
+ }
87
+
88
+ @Override
89
+ public void setSqlDate() throws IOException, SQLException
90
+ {
91
+ batch.setNull(column.getSqlType());
92
+ }
93
+
94
+ @Override
95
+ public void setSqlTime() throws IOException, SQLException
96
+ {
97
+ batch.setNull(column.getSqlType());
98
+ }
99
+
100
+ @Override
101
+ public void setSqlTimestamp() throws IOException, SQLException
102
+ {
103
+ batch.setNull(column.getSqlType());
104
+ }
105
+ }
@@ -1,59 +1,59 @@
1
- package org.embulk.output.jdbc.setter;
2
-
3
- import java.util.Calendar;
4
- import java.io.IOException;
5
- import java.sql.SQLException;
6
- import org.embulk.spi.time.Timestamp;
7
- import org.embulk.spi.time.TimestampFormatter;
8
- import org.embulk.output.jdbc.JdbcColumn;
9
- import org.embulk.output.jdbc.BatchInsert;
10
-
11
- public class PassThroughColumnSetter
12
- extends ColumnSetter
13
- {
14
- private final Calendar calendar;
15
-
16
- public PassThroughColumnSetter(BatchInsert batch, JdbcColumn column,
17
- DefaultValueSetter defaultValue,
18
- Calendar calendar)
19
- {
20
- super(batch, column, defaultValue);
21
- this.calendar = calendar;
22
- }
23
-
24
- @Override
25
- public void nullValue() throws IOException, SQLException
26
- {
27
- batch.setNull(column.getSqlType());
28
- }
29
-
30
- @Override
31
- public void booleanValue(boolean v) throws IOException, SQLException
32
- {
33
- batch.setBoolean(v);
34
- }
35
-
36
- @Override
37
- public void longValue(long v) throws IOException, SQLException
38
- {
39
- batch.setLong(v);
40
- }
41
-
42
- @Override
43
- public void doubleValue(double v) throws IOException, SQLException
44
- {
45
- batch.setDouble(v);
46
- }
47
-
48
- @Override
49
- public void stringValue(String v) throws IOException, SQLException
50
- {
51
- batch.setString(v);
52
- }
53
-
54
- @Override
55
- public void timestampValue(Timestamp v) throws IOException, SQLException
56
- {
57
- batch.setSqlTimestamp(v, calendar);
58
- }
59
- }
1
+ package org.embulk.output.jdbc.setter;
2
+
3
+ import java.util.Calendar;
4
+ import java.io.IOException;
5
+ import java.sql.SQLException;
6
+ import org.embulk.spi.time.Timestamp;
7
+ import org.embulk.spi.time.TimestampFormatter;
8
+ import org.embulk.output.jdbc.JdbcColumn;
9
+ import org.embulk.output.jdbc.BatchInsert;
10
+
11
+ public class PassThroughColumnSetter
12
+ extends ColumnSetter
13
+ {
14
+ private final Calendar calendar;
15
+
16
+ public PassThroughColumnSetter(BatchInsert batch, JdbcColumn column,
17
+ DefaultValueSetter defaultValue,
18
+ Calendar calendar)
19
+ {
20
+ super(batch, column, defaultValue);
21
+ this.calendar = calendar;
22
+ }
23
+
24
+ @Override
25
+ public void nullValue() throws IOException, SQLException
26
+ {
27
+ batch.setNull(column.getSqlType());
28
+ }
29
+
30
+ @Override
31
+ public void booleanValue(boolean v) throws IOException, SQLException
32
+ {
33
+ batch.setBoolean(v);
34
+ }
35
+
36
+ @Override
37
+ public void longValue(long v) throws IOException, SQLException
38
+ {
39
+ batch.setLong(v);
40
+ }
41
+
42
+ @Override
43
+ public void doubleValue(double v) throws IOException, SQLException
44
+ {
45
+ batch.setDouble(v);
46
+ }
47
+
48
+ @Override
49
+ public void stringValue(String v) throws IOException, SQLException
50
+ {
51
+ batch.setString(v);
52
+ }
53
+
54
+ @Override
55
+ public void timestampValue(Timestamp v) throws IOException, SQLException
56
+ {
57
+ batch.setSqlTimestamp(v, calendar);
58
+ }
59
+ }
@@ -1,76 +1,76 @@
1
- package org.embulk.output.jdbc.setter;
2
-
3
- import java.io.IOException;
4
- import java.sql.SQLException;
5
- import java.math.RoundingMode;
6
- import com.google.common.math.DoubleMath;
7
- import org.embulk.spi.ColumnVisitor;
8
- import org.embulk.spi.time.Timestamp;
9
- import org.embulk.output.jdbc.JdbcColumn;
10
- import org.embulk.output.jdbc.BatchInsert;
11
-
12
- public class ShortColumnSetter
13
- extends ColumnSetter
14
- {
15
- public ShortColumnSetter(BatchInsert batch, JdbcColumn column,
16
- DefaultValueSetter defaultValue)
17
- {
18
- super(batch, column, defaultValue);
19
- }
20
-
21
- @Override
22
- public void nullValue() throws IOException, SQLException
23
- {
24
- defaultValue.setShort();
25
- }
26
-
27
- @Override
28
- public void booleanValue(boolean v) throws IOException, SQLException
29
- {
30
- batch.setShort(v ? (short) 1 : (short) 0);
31
- }
32
-
33
- @Override
34
- public void longValue(long v) throws IOException, SQLException
35
- {
36
- if (v > Short.MAX_VALUE || v < Short.MIN_VALUE) {
37
- defaultValue.setShort();
38
- } else {
39
- batch.setShort((short) v);
40
- }
41
- }
42
-
43
- @Override
44
- public void doubleValue(double v) throws IOException, SQLException
45
- {
46
- long lv;
47
- try {
48
- // TODO configurable rounding mode
49
- lv = DoubleMath.roundToLong(v, RoundingMode.HALF_UP);
50
- } catch (ArithmeticException ex) {
51
- // NaN / Infinite / -Infinite
52
- defaultValue.setShort();
53
- return;
54
- }
55
- longValue(lv);
56
- }
57
-
58
- @Override
59
- public void stringValue(String v) throws IOException, SQLException
60
- {
61
- short sv;
62
- try {
63
- sv = Short.parseShort(v);
64
- } catch (NumberFormatException e) {
65
- defaultValue.setShort();
66
- return;
67
- }
68
- batch.setShort(sv);
69
- }
70
-
71
- @Override
72
- public void timestampValue(Timestamp v) throws IOException, SQLException
73
- {
74
- defaultValue.setShort();
75
- }
76
- }
1
+ package org.embulk.output.jdbc.setter;
2
+
3
+ import java.io.IOException;
4
+ import java.sql.SQLException;
5
+ import java.math.RoundingMode;
6
+ import com.google.common.math.DoubleMath;
7
+ import org.embulk.spi.ColumnVisitor;
8
+ import org.embulk.spi.time.Timestamp;
9
+ import org.embulk.output.jdbc.JdbcColumn;
10
+ import org.embulk.output.jdbc.BatchInsert;
11
+
12
+ public class ShortColumnSetter
13
+ extends ColumnSetter
14
+ {
15
+ public ShortColumnSetter(BatchInsert batch, JdbcColumn column,
16
+ DefaultValueSetter defaultValue)
17
+ {
18
+ super(batch, column, defaultValue);
19
+ }
20
+
21
+ @Override
22
+ public void nullValue() throws IOException, SQLException
23
+ {
24
+ defaultValue.setShort();
25
+ }
26
+
27
+ @Override
28
+ public void booleanValue(boolean v) throws IOException, SQLException
29
+ {
30
+ batch.setShort(v ? (short) 1 : (short) 0);
31
+ }
32
+
33
+ @Override
34
+ public void longValue(long v) throws IOException, SQLException
35
+ {
36
+ if (v > Short.MAX_VALUE || v < Short.MIN_VALUE) {
37
+ defaultValue.setShort();
38
+ } else {
39
+ batch.setShort((short) v);
40
+ }
41
+ }
42
+
43
+ @Override
44
+ public void doubleValue(double v) throws IOException, SQLException
45
+ {
46
+ long lv;
47
+ try {
48
+ // TODO configurable rounding mode
49
+ lv = DoubleMath.roundToLong(v, RoundingMode.HALF_UP);
50
+ } catch (ArithmeticException ex) {
51
+ // NaN / Infinite / -Infinite
52
+ defaultValue.setShort();
53
+ return;
54
+ }
55
+ longValue(lv);
56
+ }
57
+
58
+ @Override
59
+ public void stringValue(String v) throws IOException, SQLException
60
+ {
61
+ short sv;
62
+ try {
63
+ sv = Short.parseShort(v);
64
+ } catch (NumberFormatException e) {
65
+ defaultValue.setShort();
66
+ return;
67
+ }
68
+ batch.setShort(sv);
69
+ }
70
+
71
+ @Override
72
+ public void timestampValue(Timestamp v) throws IOException, SQLException
73
+ {
74
+ defaultValue.setShort();
75
+ }
76
+ }