embulk-output-teradata 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. checksums.yaml +7 -0
  2. data/.gitattributes +17 -0
  3. data/.gitignore +12 -0
  4. data/LICENSE.txt +21 -0
  5. data/README.md +32 -0
  6. data/build.gradle +96 -0
  7. data/config/checkstyle/checkstyle.xml +128 -0
  8. data/config/checkstyle/default.xml +108 -0
  9. data/gradle/wrapper/gradle-wrapper.jar +0 -0
  10. data/gradle/wrapper/gradle-wrapper.properties +6 -0
  11. data/gradlew +160 -0
  12. data/gradlew.bat +90 -0
  13. data/lib/embulk/output/teradata.rb +3 -0
  14. data/lib/tdgssconfig.jar +0 -0
  15. data/lib/terajdbc4.jar +0 -0
  16. data/src/main/java/org/embulk/output/teradata/JdbcOutputPlugin.java +134 -0
  17. data/src/main/java/org/embulk/output/teradata/TeradataOutputConnection.java +19 -0
  18. data/src/main/java/org/embulk/output/teradata/TeradataOutputPlugin.java +124 -0
  19. data/src/main/java/org/embulk/output/teradata/jdbc/AbstractJdbcOutputPlugin.java +1144 -0
  20. data/src/main/java/org/embulk/output/teradata/jdbc/BatchInsert.java +52 -0
  21. data/src/main/java/org/embulk/output/teradata/jdbc/JdbcColumn.java +134 -0
  22. data/src/main/java/org/embulk/output/teradata/jdbc/JdbcColumnOption.java +34 -0
  23. data/src/main/java/org/embulk/output/teradata/jdbc/JdbcOutputConnection.java +549 -0
  24. data/src/main/java/org/embulk/output/teradata/jdbc/JdbcOutputConnector.java +8 -0
  25. data/src/main/java/org/embulk/output/teradata/jdbc/JdbcSchema.java +79 -0
  26. data/src/main/java/org/embulk/output/teradata/jdbc/JdbcUtils.java +153 -0
  27. data/src/main/java/org/embulk/output/teradata/jdbc/MergeConfig.java +23 -0
  28. data/src/main/java/org/embulk/output/teradata/jdbc/StandardBatchInsert.java +201 -0
  29. data/src/main/java/org/embulk/output/teradata/jdbc/TimestampFormat.java +37 -0
  30. data/src/main/java/org/embulk/output/teradata/jdbc/ToString.java +54 -0
  31. data/src/main/java/org/embulk/output/teradata/jdbc/ToStringMap.java +34 -0
  32. data/src/main/java/org/embulk/output/teradata/jdbc/setter/BigDecimalColumnSetter.java +76 -0
  33. data/src/main/java/org/embulk/output/teradata/jdbc/setter/BooleanColumnSetter.java +61 -0
  34. data/src/main/java/org/embulk/output/teradata/jdbc/setter/ByteColumnSetter.java +84 -0
  35. data/src/main/java/org/embulk/output/teradata/jdbc/setter/ColumnSetter.java +48 -0
  36. data/src/main/java/org/embulk/output/teradata/jdbc/setter/ColumnSetterFactory.java +199 -0
  37. data/src/main/java/org/embulk/output/teradata/jdbc/setter/ColumnSetterVisitor.java +110 -0
  38. data/src/main/java/org/embulk/output/teradata/jdbc/setter/DefaultValueSetter.java +50 -0
  39. data/src/main/java/org/embulk/output/teradata/jdbc/setter/DoubleColumnSetter.java +68 -0
  40. data/src/main/java/org/embulk/output/teradata/jdbc/setter/FloatColumnSetter.java +68 -0
  41. data/src/main/java/org/embulk/output/teradata/jdbc/setter/IntColumnSetter.java +84 -0
  42. data/src/main/java/org/embulk/output/teradata/jdbc/setter/JsonColumnSetter.java +61 -0
  43. data/src/main/java/org/embulk/output/teradata/jdbc/setter/LongColumnSetter.java +80 -0
  44. data/src/main/java/org/embulk/output/teradata/jdbc/setter/NStringColumnSetter.java +66 -0
  45. data/src/main/java/org/embulk/output/teradata/jdbc/setter/NullColumnSetter.java +61 -0
  46. data/src/main/java/org/embulk/output/teradata/jdbc/setter/NullDefaultValueSetter.java +111 -0
  47. data/src/main/java/org/embulk/output/teradata/jdbc/setter/PassThroughColumnSetter.java +66 -0
  48. data/src/main/java/org/embulk/output/teradata/jdbc/setter/ShortColumnSetter.java +84 -0
  49. data/src/main/java/org/embulk/output/teradata/jdbc/setter/SkipColumnSetter.java +49 -0
  50. data/src/main/java/org/embulk/output/teradata/jdbc/setter/SqlDateColumnSetter.java +66 -0
  51. data/src/main/java/org/embulk/output/teradata/jdbc/setter/SqlTimeColumnSetter.java +66 -0
  52. data/src/main/java/org/embulk/output/teradata/jdbc/setter/SqlTimestampColumnSetter.java +66 -0
  53. data/src/main/java/org/embulk/output/teradata/jdbc/setter/StringColumnSetter.java +66 -0
  54. data/src/test/java/org/embulk/output/teradata/TestTeradataOutputPlugin.java +5 -0
  55. metadata +128 -0
@@ -0,0 +1,49 @@
1
+ package org.embulk.output.jdbc.setter;
2
+
3
+ import org.embulk.spi.time.Timestamp;
4
+ import org.embulk.output.jdbc.BatchInsert;
5
+ import org.msgpack.value.Value;
6
+
7
+ public class SkipColumnSetter
8
+ extends ColumnSetter
9
+ {
10
+ public SkipColumnSetter(BatchInsert batch)
11
+ {
12
+ super(batch, null, null);
13
+ }
14
+
15
+ @Override
16
+ public void booleanValue(boolean v)
17
+ {
18
+ }
19
+
20
+ @Override
21
+ public void longValue(long v)
22
+ {
23
+ }
24
+
25
+ @Override
26
+ public void doubleValue(double v)
27
+ {
28
+ }
29
+
30
+ @Override
31
+ public void stringValue(String v)
32
+ {
33
+ }
34
+
35
+ @Override
36
+ public void timestampValue(Timestamp v)
37
+ {
38
+ }
39
+
40
+ @Override
41
+ public void nullValue()
42
+ {
43
+ }
44
+
45
+ @Override
46
+ public void jsonValue(Value v)
47
+ {
48
+ }
49
+ }
@@ -0,0 +1,66 @@
1
+ package org.embulk.output.jdbc.setter;
2
+
3
+ import java.util.Calendar;
4
+ import java.io.IOException;
5
+ import java.sql.SQLException;
6
+
7
+ import org.embulk.spi.time.Timestamp;
8
+ import org.embulk.output.jdbc.JdbcColumn;
9
+ import org.embulk.output.jdbc.BatchInsert;
10
+ import org.msgpack.value.Value;
11
+
12
+ public class SqlDateColumnSetter
13
+ extends ColumnSetter
14
+ {
15
+ protected final Calendar calendar;
16
+
17
+ public SqlDateColumnSetter(BatchInsert batch, JdbcColumn column,
18
+ DefaultValueSetter defaultValue,
19
+ Calendar calendar)
20
+ {
21
+ super(batch, column, defaultValue);
22
+ this.calendar = calendar;
23
+ }
24
+
25
+ @Override
26
+ public void nullValue() throws IOException, SQLException
27
+ {
28
+ defaultValue.setSqlDate();
29
+ }
30
+
31
+ @Override
32
+ public void booleanValue(boolean v) throws IOException, SQLException
33
+ {
34
+ defaultValue.setSqlDate();
35
+ }
36
+
37
+ @Override
38
+ public void longValue(long v) throws IOException, SQLException
39
+ {
40
+ defaultValue.setSqlDate();
41
+ }
42
+
43
+ @Override
44
+ public void doubleValue(double v) throws IOException, SQLException
45
+ {
46
+ defaultValue.setSqlDate();
47
+ }
48
+
49
+ @Override
50
+ public void stringValue(String v) throws IOException, SQLException
51
+ {
52
+ defaultValue.setSqlDate();
53
+ }
54
+
55
+ @Override
56
+ public void timestampValue(Timestamp v) throws IOException, SQLException
57
+ {
58
+ batch.setSqlDate(v, calendar);
59
+ }
60
+
61
+ @Override
62
+ public void jsonValue(Value v) throws IOException, SQLException
63
+ {
64
+ defaultValue.setSqlDate();
65
+ }
66
+ }
@@ -0,0 +1,66 @@
1
+ package org.embulk.output.jdbc.setter;
2
+
3
+ import java.util.Calendar;
4
+ import java.io.IOException;
5
+ import java.sql.SQLException;
6
+
7
+ import org.embulk.spi.time.Timestamp;
8
+ import org.embulk.output.jdbc.JdbcColumn;
9
+ import org.embulk.output.jdbc.BatchInsert;
10
+ import org.msgpack.value.Value;
11
+
12
+ public class SqlTimeColumnSetter
13
+ extends ColumnSetter
14
+ {
15
+ protected final Calendar calendar;
16
+
17
+ public SqlTimeColumnSetter(BatchInsert batch, JdbcColumn column,
18
+ DefaultValueSetter defaultValue,
19
+ Calendar calendar)
20
+ {
21
+ super(batch, column, defaultValue);
22
+ this.calendar = calendar;
23
+ }
24
+
25
+ @Override
26
+ public void nullValue() throws IOException, SQLException
27
+ {
28
+ defaultValue.setSqlTime();
29
+ }
30
+
31
+ @Override
32
+ public void booleanValue(boolean v) throws IOException, SQLException
33
+ {
34
+ defaultValue.setSqlTime();
35
+ }
36
+
37
+ @Override
38
+ public void longValue(long v) throws IOException, SQLException
39
+ {
40
+ defaultValue.setSqlTime();
41
+ }
42
+
43
+ @Override
44
+ public void doubleValue(double v) throws IOException, SQLException
45
+ {
46
+ defaultValue.setSqlTime();
47
+ }
48
+
49
+ @Override
50
+ public void stringValue(String v) throws IOException, SQLException
51
+ {
52
+ defaultValue.setSqlTime();
53
+ }
54
+
55
+ @Override
56
+ public void timestampValue(Timestamp v) throws IOException, SQLException
57
+ {
58
+ batch.setSqlTime(v, calendar);
59
+ }
60
+
61
+ @Override
62
+ public void jsonValue(Value v) throws IOException, SQLException
63
+ {
64
+ defaultValue.setSqlTime();
65
+ }
66
+ }
@@ -0,0 +1,66 @@
1
+ package org.embulk.output.jdbc.setter;
2
+
3
+ import java.util.Calendar;
4
+ import java.io.IOException;
5
+ import java.sql.SQLException;
6
+
7
+ import org.embulk.spi.time.Timestamp;
8
+ import org.embulk.output.jdbc.JdbcColumn;
9
+ import org.embulk.output.jdbc.BatchInsert;
10
+ import org.msgpack.value.Value;
11
+
12
+ public class SqlTimestampColumnSetter
13
+ extends ColumnSetter
14
+ {
15
+ protected final Calendar calendar;
16
+
17
+ public SqlTimestampColumnSetter(BatchInsert batch, JdbcColumn column,
18
+ DefaultValueSetter defaultValue,
19
+ Calendar calendar)
20
+ {
21
+ super(batch, column, defaultValue);
22
+ this.calendar = calendar;
23
+ }
24
+
25
+ @Override
26
+ public void nullValue() throws IOException, SQLException
27
+ {
28
+ defaultValue.setSqlTimestamp();
29
+ }
30
+
31
+ @Override
32
+ public void booleanValue(boolean v) throws IOException, SQLException
33
+ {
34
+ defaultValue.setSqlTimestamp();
35
+ }
36
+
37
+ @Override
38
+ public void longValue(long v) throws IOException, SQLException
39
+ {
40
+ defaultValue.setSqlTimestamp();
41
+ }
42
+
43
+ @Override
44
+ public void doubleValue(double v) throws IOException, SQLException
45
+ {
46
+ defaultValue.setSqlTimestamp();
47
+ }
48
+
49
+ @Override
50
+ public void stringValue(String v) throws IOException, SQLException
51
+ {
52
+ defaultValue.setSqlTimestamp();
53
+ }
54
+
55
+ @Override
56
+ public void timestampValue(Timestamp v) throws IOException, SQLException
57
+ {
58
+ batch.setSqlTimestamp(v, calendar);
59
+ }
60
+
61
+ @Override
62
+ public void jsonValue(Value v) throws IOException, SQLException
63
+ {
64
+ defaultValue.setSqlTimestamp();
65
+ }
66
+ }
@@ -0,0 +1,66 @@
1
+ package org.embulk.output.jdbc.setter;
2
+
3
+ import java.io.IOException;
4
+ import java.sql.SQLException;
5
+
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
+ import org.msgpack.value.Value;
11
+
12
+ public class StringColumnSetter
13
+ extends ColumnSetter
14
+ {
15
+ private final TimestampFormatter timestampFormatter;
16
+
17
+ public StringColumnSetter(BatchInsert batch, JdbcColumn column,
18
+ DefaultValueSetter defaultValue,
19
+ TimestampFormatter timestampFormatter)
20
+ {
21
+ super(batch, column, defaultValue);
22
+ this.timestampFormatter = timestampFormatter;
23
+ }
24
+
25
+ @Override
26
+ public void nullValue() throws IOException, SQLException
27
+ {
28
+ defaultValue.setString();
29
+ }
30
+
31
+ @Override
32
+ public void booleanValue(boolean v) throws IOException, SQLException
33
+ {
34
+ batch.setString(Boolean.toString(v));
35
+ }
36
+
37
+ @Override
38
+ public void longValue(long v) throws IOException, SQLException
39
+ {
40
+ batch.setString(Long.toString(v));
41
+ }
42
+
43
+ @Override
44
+ public void doubleValue(double v) throws IOException, SQLException
45
+ {
46
+ batch.setString(Double.toString(v));
47
+ }
48
+
49
+ @Override
50
+ public void stringValue(String v) throws IOException, SQLException
51
+ {
52
+ batch.setString(v);
53
+ }
54
+
55
+ @Override
56
+ public void timestampValue(Timestamp v) throws IOException, SQLException
57
+ {
58
+ batch.setString(timestampFormatter.format(v));
59
+ }
60
+
61
+ @Override
62
+ public void jsonValue(Value v) throws IOException, SQLException
63
+ {
64
+ batch.setString(v.toJson());
65
+ }
66
+ }
@@ -0,0 +1,5 @@
1
+ package org.embulk.output.teradata;
2
+
3
+ public class TestTeradataOutputPlugin
4
+ {
5
+ }
metadata ADDED
@@ -0,0 +1,128 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: embulk-output-teradata
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.1
5
+ platform: ruby
6
+ authors:
7
+ - ebyhr
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2017-01-14 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ requirement: !ruby/object:Gem::Requirement
15
+ requirements:
16
+ - - ~>
17
+ - !ruby/object:Gem::Version
18
+ version: '1.0'
19
+ name: bundler
20
+ prerelease: false
21
+ type: :development
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ~>
25
+ - !ruby/object:Gem::Version
26
+ version: '1.0'
27
+ - !ruby/object:Gem::Dependency
28
+ requirement: !ruby/object:Gem::Requirement
29
+ requirements:
30
+ - - '>='
31
+ - !ruby/object:Gem::Version
32
+ version: '10.0'
33
+ name: rake
34
+ prerelease: false
35
+ type: :development
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - '>='
39
+ - !ruby/object:Gem::Version
40
+ version: '10.0'
41
+ description: Dumps records to Teradata.
42
+ email:
43
+ - ebyhry@gmail.com
44
+ executables: []
45
+ extensions: []
46
+ extra_rdoc_files: []
47
+ files:
48
+ - .gitattributes
49
+ - .gitignore
50
+ - LICENSE.txt
51
+ - README.md
52
+ - build.gradle
53
+ - config/checkstyle/checkstyle.xml
54
+ - config/checkstyle/default.xml
55
+ - gradle/wrapper/gradle-wrapper.jar
56
+ - gradle/wrapper/gradle-wrapper.properties
57
+ - gradlew
58
+ - gradlew.bat
59
+ - lib/embulk/output/teradata.rb
60
+ - lib/tdgssconfig.jar
61
+ - lib/terajdbc4.jar
62
+ - src/main/java/org/embulk/output/teradata/JdbcOutputPlugin.java
63
+ - src/main/java/org/embulk/output/teradata/TeradataOutputConnection.java
64
+ - src/main/java/org/embulk/output/teradata/TeradataOutputPlugin.java
65
+ - src/main/java/org/embulk/output/teradata/jdbc/AbstractJdbcOutputPlugin.java
66
+ - src/main/java/org/embulk/output/teradata/jdbc/BatchInsert.java
67
+ - src/main/java/org/embulk/output/teradata/jdbc/JdbcColumn.java
68
+ - src/main/java/org/embulk/output/teradata/jdbc/JdbcColumnOption.java
69
+ - src/main/java/org/embulk/output/teradata/jdbc/JdbcOutputConnection.java
70
+ - src/main/java/org/embulk/output/teradata/jdbc/JdbcOutputConnector.java
71
+ - src/main/java/org/embulk/output/teradata/jdbc/JdbcSchema.java
72
+ - src/main/java/org/embulk/output/teradata/jdbc/JdbcUtils.java
73
+ - src/main/java/org/embulk/output/teradata/jdbc/MergeConfig.java
74
+ - src/main/java/org/embulk/output/teradata/jdbc/StandardBatchInsert.java
75
+ - src/main/java/org/embulk/output/teradata/jdbc/TimestampFormat.java
76
+ - src/main/java/org/embulk/output/teradata/jdbc/ToString.java
77
+ - src/main/java/org/embulk/output/teradata/jdbc/ToStringMap.java
78
+ - src/main/java/org/embulk/output/teradata/jdbc/setter/BigDecimalColumnSetter.java
79
+ - src/main/java/org/embulk/output/teradata/jdbc/setter/BooleanColumnSetter.java
80
+ - src/main/java/org/embulk/output/teradata/jdbc/setter/ByteColumnSetter.java
81
+ - src/main/java/org/embulk/output/teradata/jdbc/setter/ColumnSetter.java
82
+ - src/main/java/org/embulk/output/teradata/jdbc/setter/ColumnSetterFactory.java
83
+ - src/main/java/org/embulk/output/teradata/jdbc/setter/ColumnSetterVisitor.java
84
+ - src/main/java/org/embulk/output/teradata/jdbc/setter/DefaultValueSetter.java
85
+ - src/main/java/org/embulk/output/teradata/jdbc/setter/DoubleColumnSetter.java
86
+ - src/main/java/org/embulk/output/teradata/jdbc/setter/FloatColumnSetter.java
87
+ - src/main/java/org/embulk/output/teradata/jdbc/setter/IntColumnSetter.java
88
+ - src/main/java/org/embulk/output/teradata/jdbc/setter/JsonColumnSetter.java
89
+ - src/main/java/org/embulk/output/teradata/jdbc/setter/LongColumnSetter.java
90
+ - src/main/java/org/embulk/output/teradata/jdbc/setter/NStringColumnSetter.java
91
+ - src/main/java/org/embulk/output/teradata/jdbc/setter/NullColumnSetter.java
92
+ - src/main/java/org/embulk/output/teradata/jdbc/setter/NullDefaultValueSetter.java
93
+ - src/main/java/org/embulk/output/teradata/jdbc/setter/PassThroughColumnSetter.java
94
+ - src/main/java/org/embulk/output/teradata/jdbc/setter/ShortColumnSetter.java
95
+ - src/main/java/org/embulk/output/teradata/jdbc/setter/SkipColumnSetter.java
96
+ - src/main/java/org/embulk/output/teradata/jdbc/setter/SqlDateColumnSetter.java
97
+ - src/main/java/org/embulk/output/teradata/jdbc/setter/SqlTimeColumnSetter.java
98
+ - src/main/java/org/embulk/output/teradata/jdbc/setter/SqlTimestampColumnSetter.java
99
+ - src/main/java/org/embulk/output/teradata/jdbc/setter/StringColumnSetter.java
100
+ - src/test/java/org/embulk/output/teradata/TestTeradataOutputPlugin.java
101
+ - classpath/embulk-output-teradata-0.1.1.jar
102
+ - classpath/tdgssconfig.jar
103
+ - classpath/terajdbc4.jar
104
+ homepage: https://github.com/ebyhry/embulk-output-teradata
105
+ licenses:
106
+ - MIT
107
+ metadata: {}
108
+ post_install_message:
109
+ rdoc_options: []
110
+ require_paths:
111
+ - lib
112
+ required_ruby_version: !ruby/object:Gem::Requirement
113
+ requirements:
114
+ - - '>='
115
+ - !ruby/object:Gem::Version
116
+ version: '0'
117
+ required_rubygems_version: !ruby/object:Gem::Requirement
118
+ requirements:
119
+ - - '>='
120
+ - !ruby/object:Gem::Version
121
+ version: '0'
122
+ requirements: []
123
+ rubyforge_project:
124
+ rubygems_version: 2.1.9
125
+ signing_key:
126
+ specification_version: 4
127
+ summary: Teradata output plugin for Embulk
128
+ test_files: []