embulk 0.7.11-java → 0.8.0-java
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +3 -3
- data/README.md +1 -1
- data/build.gradle +2 -2
- data/embulk-core/build.gradle +2 -0
- data/embulk-core/src/main/java/org/embulk/config/ConfigLoader.java +11 -3
- data/embulk-core/src/main/java/org/embulk/config/YamlTagResolver.java +53 -0
- data/embulk-core/src/main/java/org/embulk/exec/ExecModule.java +0 -1
- data/embulk-core/src/main/java/org/embulk/exec/LocalExecutorPlugin.java +479 -69
- data/embulk-core/src/main/java/org/embulk/spi/Column.java +3 -0
- data/embulk-core/src/main/java/org/embulk/spi/ColumnVisitor.java +2 -0
- data/embulk-core/src/main/java/org/embulk/spi/ExecSession.java +12 -5
- data/embulk-core/src/main/java/org/embulk/spi/Page.java +19 -0
- data/embulk-core/src/main/java/org/embulk/spi/PageBuilder.java +26 -5
- data/embulk-core/src/main/java/org/embulk/spi/PageReader.java +13 -0
- data/embulk-core/src/main/java/org/embulk/spi/json/JsonParseException.java +17 -0
- data/embulk-core/src/main/java/org/embulk/spi/json/JsonParser.java +125 -0
- data/embulk-core/src/main/java/org/embulk/spi/json/RubyValueApi.java +55 -0
- data/embulk-core/src/main/java/org/embulk/spi/type/JsonType.java +14 -0
- data/embulk-core/src/main/java/org/embulk/spi/type/TypeDeserializer.java +1 -0
- data/embulk-core/src/main/java/org/embulk/spi/type/Types.java +2 -0
- data/embulk-core/src/main/java/org/embulk/spi/util/DynamicColumnSetterFactory.java +6 -0
- data/embulk-core/src/main/java/org/embulk/spi/util/PagePrinter.java +5 -0
- data/embulk-core/src/main/java/org/embulk/spi/util/Pages.java +10 -0
- data/embulk-core/src/main/java/org/embulk/spi/util/dynamic/AbstractDynamicColumnSetter.java +3 -0
- data/embulk-core/src/main/java/org/embulk/spi/util/dynamic/BooleanColumnSetter.java +7 -0
- data/embulk-core/src/main/java/org/embulk/spi/util/dynamic/DefaultValueSetter.java +2 -0
- data/embulk-core/src/main/java/org/embulk/spi/util/dynamic/DoubleColumnSetter.java +7 -0
- data/embulk-core/src/main/java/org/embulk/spi/util/dynamic/JsonColumnSetter.java +73 -0
- data/embulk-core/src/main/java/org/embulk/spi/util/dynamic/LongColumnSetter.java +11 -2
- data/embulk-core/src/main/java/org/embulk/spi/util/dynamic/NullDefaultValueSetter.java +5 -0
- data/embulk-core/src/main/java/org/embulk/spi/util/dynamic/SkipColumnSetter.java +5 -0
- data/embulk-core/src/main/java/org/embulk/spi/util/dynamic/StringColumnSetter.java +7 -0
- data/embulk-core/src/main/java/org/embulk/spi/util/dynamic/TimestampColumnSetter.java +9 -1
- data/embulk-core/src/test/java/org/embulk/spi/MockFormatterPlugin.java +7 -0
- data/embulk-docs/src/built-in.rst +40 -3
- data/embulk-docs/src/conf.py +2 -2
- data/embulk-docs/src/release.rst +1 -1
- data/embulk-docs/src/release/release-0.8.0.rst +68 -0
- data/embulk-standards/src/main/java/org/embulk/standards/CsvFormatterPlugin.java +12 -1
- data/embulk-standards/src/main/java/org/embulk/standards/CsvParserPlugin.java +18 -0
- data/embulk-standards/src/main/java/org/embulk/standards/CsvTokenizer.java +1 -1
- data/embulk.gemspec +1 -1
- data/gradle/wrapper/gradle-wrapper.jar +0 -0
- data/gradle/wrapper/gradle-wrapper.properties +2 -2
- data/gradlew +3 -7
- data/lib/embulk/column.rb +2 -0
- data/lib/embulk/command/embulk_migrate_plugin.rb +76 -10
- data/lib/embulk/command/embulk_new_plugin.rb +2 -0
- data/lib/embulk/command/embulk_run.rb +17 -10
- data/lib/embulk/data/bundle/.ruby-version +1 -1
- data/lib/embulk/data/new/java/build.gradle.erb +21 -0
- data/lib/embulk/data/new/java/config/checkstyle/checkstyle.xml +128 -0
- data/lib/embulk/data/new/java/config/checkstyle/default.xml +108 -0
- data/lib/embulk/data/new/java/gradle/wrapper/gradle-wrapper.jar +0 -0
- data/lib/embulk/data/new/java/gradle/wrapper/gradle-wrapper.properties +2 -2
- data/lib/embulk/data/new/java/gradlew +3 -7
- data/lib/embulk/data/new/ruby/.ruby-version +1 -1
- data/lib/embulk/guess/csv.rb +1 -1
- data/lib/embulk/guess/schema_guess.rb +6 -0
- data/lib/embulk/guess_plugin.rb +1 -1
- data/lib/embulk/java/imports.rb +4 -0
- data/lib/embulk/plugin_registry.rb +8 -12
- data/lib/embulk/schema.rb +6 -0
- data/lib/embulk/version.rb +1 -1
- data/test/guess/test_csv_guess.rb +170 -0
- data/test/helper.rb +2 -0
- metadata +17 -15
- data/embulk-core/src/main/java/org/embulk/exec/LocalThreadExecutor.java +0 -34
- data/embulk-core/src/main/java/org/embulk/guice/Bootstrap.java +0 -157
- data/embulk-core/src/main/java/org/embulk/guice/CloseableInjector.java +0 -22
- data/embulk-core/src/main/java/org/embulk/guice/InjectorProxy.java +0 -145
- data/embulk-core/src/main/java/org/embulk/guice/LifeCycleInjector.java +0 -26
- data/embulk-core/src/main/java/org/embulk/guice/LifeCycleInjectorProxy.java +0 -61
- data/embulk-core/src/main/java/org/embulk/guice/LifeCycleManager.java +0 -187
- data/embulk-core/src/main/java/org/embulk/guice/LifeCycleMethods.java +0 -89
- data/embulk-core/src/main/java/org/embulk/guice/LifeCycleMethodsMap.java +0 -38
- data/embulk-core/src/main/java/org/embulk/guice/LifeCycleModule.java +0 -97
- data/embulk-docs/src/release/release-0.7.11.rst +0 -13
data/test/helper.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: embulk
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.8.0
|
5
5
|
platform: java
|
6
6
|
authors:
|
7
7
|
- Sadayuki Furuhashi
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-01-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -133,10 +133,11 @@ files:
|
|
133
133
|
- classpath/bval-jsr303-0.5.jar
|
134
134
|
- classpath/commons-beanutils-core-1.8.3.jar
|
135
135
|
- classpath/commons-lang3-3.1.jar
|
136
|
-
- classpath/embulk-core-0.
|
137
|
-
- classpath/embulk-standards-0.
|
136
|
+
- classpath/embulk-core-0.8.0.jar
|
137
|
+
- classpath/embulk-standards-0.8.0.jar
|
138
138
|
- classpath/guava-18.0.jar
|
139
139
|
- classpath/guice-4.0.jar
|
140
|
+
- classpath/guice-bootstrap-0.1.1.jar
|
140
141
|
- classpath/guice-multibindings-4.0.jar
|
141
142
|
- classpath/jackson-annotations-2.5.3.jar
|
142
143
|
- classpath/jackson-core-2.5.3.jar
|
@@ -149,6 +150,7 @@ files:
|
|
149
150
|
- classpath/joda-time-2.8.1.jar
|
150
151
|
- classpath/logback-classic-1.1.3.jar
|
151
152
|
- classpath/logback-core-1.1.3.jar
|
153
|
+
- classpath/msgpack-core-0.8.1.jar
|
152
154
|
- classpath/netty-buffer-5.0.0.Alpha1.jar
|
153
155
|
- classpath/netty-common-5.0.0.Alpha1.jar
|
154
156
|
- classpath/slf4j-api-1.7.12.jar
|
@@ -188,6 +190,7 @@ files:
|
|
188
190
|
- embulk-core/src/main/java/org/embulk/config/TaskValidator.java
|
189
191
|
- embulk-core/src/main/java/org/embulk/config/UserDataException.java
|
190
192
|
- embulk-core/src/main/java/org/embulk/config/UserDataExceptions.java
|
193
|
+
- embulk-core/src/main/java/org/embulk/config/YamlTagResolver.java
|
191
194
|
- embulk-core/src/main/java/org/embulk/exec/BulkLoader.java
|
192
195
|
- embulk-core/src/main/java/org/embulk/exec/ConfigurableGuessInputPlugin.java
|
193
196
|
- embulk-core/src/main/java/org/embulk/exec/ExecModule.java
|
@@ -198,7 +201,6 @@ files:
|
|
198
201
|
- embulk-core/src/main/java/org/embulk/exec/ForSystemConfig.java
|
199
202
|
- embulk-core/src/main/java/org/embulk/exec/GuessExecutor.java
|
200
203
|
- embulk-core/src/main/java/org/embulk/exec/LocalExecutorPlugin.java
|
201
|
-
- embulk-core/src/main/java/org/embulk/exec/LocalThreadExecutor.java
|
202
204
|
- embulk-core/src/main/java/org/embulk/exec/LoggerProvider.java
|
203
205
|
- embulk-core/src/main/java/org/embulk/exec/NoSampleException.java
|
204
206
|
- embulk-core/src/main/java/org/embulk/exec/PartialExecutionException.java
|
@@ -212,15 +214,6 @@ files:
|
|
212
214
|
- embulk-core/src/main/java/org/embulk/exec/SystemConfigModule.java
|
213
215
|
- embulk-core/src/main/java/org/embulk/exec/TempFileAllocator.java
|
214
216
|
- embulk-core/src/main/java/org/embulk/exec/TransactionStage.java
|
215
|
-
- embulk-core/src/main/java/org/embulk/guice/Bootstrap.java
|
216
|
-
- embulk-core/src/main/java/org/embulk/guice/CloseableInjector.java
|
217
|
-
- embulk-core/src/main/java/org/embulk/guice/InjectorProxy.java
|
218
|
-
- embulk-core/src/main/java/org/embulk/guice/LifeCycleInjector.java
|
219
|
-
- embulk-core/src/main/java/org/embulk/guice/LifeCycleInjectorProxy.java
|
220
|
-
- embulk-core/src/main/java/org/embulk/guice/LifeCycleManager.java
|
221
|
-
- embulk-core/src/main/java/org/embulk/guice/LifeCycleMethods.java
|
222
|
-
- embulk-core/src/main/java/org/embulk/guice/LifeCycleMethodsMap.java
|
223
|
-
- embulk-core/src/main/java/org/embulk/guice/LifeCycleModule.java
|
224
217
|
- embulk-core/src/main/java/org/embulk/jruby/JRubyPluginSource.java
|
225
218
|
- embulk-core/src/main/java/org/embulk/jruby/JRubyScriptingModule.java
|
226
219
|
- embulk-core/src/main/java/org/embulk/plugin/BuiltinPluginSourceModule.java
|
@@ -281,6 +274,9 @@ files:
|
|
281
274
|
- embulk-core/src/main/java/org/embulk/spi/TransactionalFileInput.java
|
282
275
|
- embulk-core/src/main/java/org/embulk/spi/TransactionalFileOutput.java
|
283
276
|
- embulk-core/src/main/java/org/embulk/spi/TransactionalPageOutput.java
|
277
|
+
- embulk-core/src/main/java/org/embulk/spi/json/JsonParseException.java
|
278
|
+
- embulk-core/src/main/java/org/embulk/spi/json/JsonParser.java
|
279
|
+
- embulk-core/src/main/java/org/embulk/spi/json/RubyValueApi.java
|
284
280
|
- embulk-core/src/main/java/org/embulk/spi/time/DateTimeZoneSerDe.java
|
285
281
|
- embulk-core/src/main/java/org/embulk/spi/time/JRubyTimeParserHelper.java
|
286
282
|
- embulk-core/src/main/java/org/embulk/spi/time/JRubyTimeParserHelperFactory.java
|
@@ -293,6 +289,7 @@ files:
|
|
293
289
|
- embulk-core/src/main/java/org/embulk/spi/type/AbstractType.java
|
294
290
|
- embulk-core/src/main/java/org/embulk/spi/type/BooleanType.java
|
295
291
|
- embulk-core/src/main/java/org/embulk/spi/type/DoubleType.java
|
292
|
+
- embulk-core/src/main/java/org/embulk/spi/type/JsonType.java
|
296
293
|
- embulk-core/src/main/java/org/embulk/spi/type/LongType.java
|
297
294
|
- embulk-core/src/main/java/org/embulk/spi/type/StringType.java
|
298
295
|
- embulk-core/src/main/java/org/embulk/spi/type/TimestampType.java
|
@@ -332,6 +329,7 @@ files:
|
|
332
329
|
- embulk-core/src/main/java/org/embulk/spi/util/dynamic/BooleanColumnSetter.java
|
333
330
|
- embulk-core/src/main/java/org/embulk/spi/util/dynamic/DefaultValueSetter.java
|
334
331
|
- embulk-core/src/main/java/org/embulk/spi/util/dynamic/DoubleColumnSetter.java
|
332
|
+
- embulk-core/src/main/java/org/embulk/spi/util/dynamic/JsonColumnSetter.java
|
335
333
|
- embulk-core/src/main/java/org/embulk/spi/util/dynamic/LongColumnSetter.java
|
336
334
|
- embulk-core/src/main/java/org/embulk/spi/util/dynamic/NullDefaultValueSetter.java
|
337
335
|
- embulk-core/src/main/java/org/embulk/spi/util/dynamic/SkipColumnSetter.java
|
@@ -437,7 +435,6 @@ files:
|
|
437
435
|
- embulk-docs/src/release/release-0.7.0.rst
|
438
436
|
- embulk-docs/src/release/release-0.7.1.rst
|
439
437
|
- embulk-docs/src/release/release-0.7.10.rst
|
440
|
-
- embulk-docs/src/release/release-0.7.11.rst
|
441
438
|
- embulk-docs/src/release/release-0.7.2.rst
|
442
439
|
- embulk-docs/src/release/release-0.7.3.rst
|
443
440
|
- embulk-docs/src/release/release-0.7.4.rst
|
@@ -446,6 +443,7 @@ files:
|
|
446
443
|
- embulk-docs/src/release/release-0.7.7.rst
|
447
444
|
- embulk-docs/src/release/release-0.7.8.rst
|
448
445
|
- embulk-docs/src/release/release-0.7.9.rst
|
446
|
+
- embulk-docs/src/release/release-0.8.0.rst
|
449
447
|
- embulk-standards/build.gradle
|
450
448
|
- embulk-standards/src/main/java/org/embulk/standards/CsvFormatterPlugin.java
|
451
449
|
- embulk-standards/src/main/java/org/embulk/standards/CsvParserPlugin.java
|
@@ -490,6 +488,8 @@ files:
|
|
490
488
|
- lib/embulk/data/new/README.md.erb
|
491
489
|
- lib/embulk/data/new/gitignore.erb
|
492
490
|
- lib/embulk/data/new/java/build.gradle.erb
|
491
|
+
- lib/embulk/data/new/java/config/checkstyle/checkstyle.xml
|
492
|
+
- lib/embulk/data/new/java/config/checkstyle/default.xml
|
493
493
|
- lib/embulk/data/new/java/decoder.java.erb
|
494
494
|
- lib/embulk/data/new/java/encoder.java.erb
|
495
495
|
- lib/embulk/data/new/java/file_input.java.erb
|
@@ -552,6 +552,7 @@ files:
|
|
552
552
|
- lib/embulk/schema.rb
|
553
553
|
- lib/embulk/version.rb
|
554
554
|
- settings.gradle
|
555
|
+
- test/guess/test_csv_guess.rb
|
555
556
|
- test/guess/test_schema_guess.rb
|
556
557
|
- test/guess/test_time_format_guess.rb
|
557
558
|
- test/helper.rb
|
@@ -581,6 +582,7 @@ signing_key:
|
|
581
582
|
specification_version: 4
|
582
583
|
summary: Embulk, a plugin-based parallel bulk data loader
|
583
584
|
test_files:
|
585
|
+
- test/guess/test_csv_guess.rb
|
584
586
|
- test/guess/test_schema_guess.rb
|
585
587
|
- test/guess/test_time_format_guess.rb
|
586
588
|
- test/helper.rb
|
@@ -1,34 +0,0 @@
|
|
1
|
-
package org.embulk.exec;
|
2
|
-
|
3
|
-
import java.util.concurrent.Executors;
|
4
|
-
import java.util.concurrent.ExecutorService;
|
5
|
-
import com.google.common.util.concurrent.ThreadFactoryBuilder;
|
6
|
-
import com.google.inject.Inject;
|
7
|
-
import org.embulk.config.ConfigSource;
|
8
|
-
|
9
|
-
/*
|
10
|
-
* Injected in SINGLETON scope at ExecModule
|
11
|
-
*/
|
12
|
-
public class LocalThreadExecutor
|
13
|
-
{
|
14
|
-
private final ExecutorService executor;
|
15
|
-
|
16
|
-
@Inject
|
17
|
-
public LocalThreadExecutor(@ForSystemConfig ConfigSource systemConfig)
|
18
|
-
{
|
19
|
-
int defaultMaxThreads = Runtime.getRuntime().availableProcessors() * 2;
|
20
|
-
int maxThreads = systemConfig.get(Integer.class, "max_threads", defaultMaxThreads);
|
21
|
-
this.executor = Executors.newFixedThreadPool(maxThreads,
|
22
|
-
new ThreadFactoryBuilder()
|
23
|
-
.setNameFormat("embulk-executor-%d")
|
24
|
-
.setDaemon(true)
|
25
|
-
.build());
|
26
|
-
}
|
27
|
-
|
28
|
-
public ExecutorService getExecutorService()
|
29
|
-
{
|
30
|
-
return executor;
|
31
|
-
}
|
32
|
-
|
33
|
-
// TODO shutdown
|
34
|
-
}
|
@@ -1,157 +0,0 @@
|
|
1
|
-
/*
|
2
|
-
* Copyright 2015 Sadayuki Furuhashi
|
3
|
-
*
|
4
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
-
* you may not use this file except in compliance with the License.
|
6
|
-
* You may obtain a copy of the License at
|
7
|
-
*
|
8
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
9
|
-
*
|
10
|
-
* Unless required by applicable law or agreed to in writing, software
|
11
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
-
* See the License for the specific language governing permissions and
|
14
|
-
* limitations under the License.
|
15
|
-
*/
|
16
|
-
package org.embulk.guice;
|
17
|
-
|
18
|
-
import com.google.common.base.Function;
|
19
|
-
import com.google.common.collect.ImmutableList;
|
20
|
-
import com.google.common.collect.Iterables;
|
21
|
-
import com.google.common.annotations.Beta;
|
22
|
-
|
23
|
-
import com.google.inject.Binder;
|
24
|
-
import com.google.inject.Guice;
|
25
|
-
import com.google.inject.Module;
|
26
|
-
import com.google.inject.Stage;
|
27
|
-
import com.google.inject.Injector;
|
28
|
-
import java.util.Arrays;
|
29
|
-
import java.util.List;
|
30
|
-
|
31
|
-
@Beta
|
32
|
-
public class Bootstrap
|
33
|
-
{
|
34
|
-
private List<Module> modules;
|
35
|
-
|
36
|
-
private boolean requireExplicitBindings = true;
|
37
|
-
|
38
|
-
private boolean started;
|
39
|
-
|
40
|
-
public Bootstrap(Module... modules)
|
41
|
-
{
|
42
|
-
this(Arrays.asList(modules));
|
43
|
-
}
|
44
|
-
|
45
|
-
public Bootstrap(Iterable<? extends Module> modules)
|
46
|
-
{
|
47
|
-
this.modules = ImmutableList.copyOf(modules);
|
48
|
-
}
|
49
|
-
|
50
|
-
public Bootstrap requireExplicitBindings(boolean requireExplicitBindings)
|
51
|
-
{
|
52
|
-
this.requireExplicitBindings = requireExplicitBindings;
|
53
|
-
return this;
|
54
|
-
}
|
55
|
-
|
56
|
-
public Bootstrap addModules(Module... additionalModules)
|
57
|
-
{
|
58
|
-
return addModules(Arrays.asList(additionalModules));
|
59
|
-
}
|
60
|
-
|
61
|
-
public Bootstrap addModules(Iterable<? extends Module> additionalModules)
|
62
|
-
{
|
63
|
-
modules = ImmutableList.copyOf(Iterables.concat(modules, additionalModules));
|
64
|
-
return this;
|
65
|
-
}
|
66
|
-
|
67
|
-
//public Bootstrap onPreDestroy()
|
68
|
-
//{
|
69
|
-
//}
|
70
|
-
|
71
|
-
//public Bootstrap onPreDestroyException()
|
72
|
-
//{
|
73
|
-
//}
|
74
|
-
|
75
|
-
//public Bootstrap onStop()
|
76
|
-
//{
|
77
|
-
//}
|
78
|
-
|
79
|
-
//public Bootstrap forEachModule(Consumer<? super Module> function)
|
80
|
-
//{
|
81
|
-
// for (Module module : modules) {
|
82
|
-
// function.accept(module);
|
83
|
-
// }
|
84
|
-
// return this;
|
85
|
-
//}
|
86
|
-
|
87
|
-
//public <T> Bootstrap forEachModule(Class<T> ifClass, Consumer<? super T> function)
|
88
|
-
//{
|
89
|
-
// for (Module module : modules) {
|
90
|
-
// if (ifClass.instance(module) {
|
91
|
-
// function.accept(module);
|
92
|
-
// }
|
93
|
-
// }
|
94
|
-
// return this;
|
95
|
-
//}
|
96
|
-
|
97
|
-
public Bootstrap overrideModules(Function<? super List<Module>, ? extends Iterable<? extends Module>> function)
|
98
|
-
{
|
99
|
-
modules = ImmutableList.copyOf(function.apply(modules));
|
100
|
-
return this;
|
101
|
-
}
|
102
|
-
|
103
|
-
public LifeCycleInjector initialize()
|
104
|
-
{
|
105
|
-
return build(true);
|
106
|
-
}
|
107
|
-
|
108
|
-
public CloseableInjector initializeCloseable()
|
109
|
-
{
|
110
|
-
return build(false);
|
111
|
-
}
|
112
|
-
|
113
|
-
private LifeCycleInjectorProxy build(boolean destroyOnShutdownHook)
|
114
|
-
{
|
115
|
-
Injector injector = start();
|
116
|
-
LifeCycleManager lifeCycleManager = injector.getInstance(LifeCycleManager.class);
|
117
|
-
if (destroyOnShutdownHook) {
|
118
|
-
lifeCycleManager.destroyOnShutdownHook();
|
119
|
-
}
|
120
|
-
return new LifeCycleInjectorProxy(injector, lifeCycleManager);
|
121
|
-
}
|
122
|
-
|
123
|
-
private Injector start()
|
124
|
-
{
|
125
|
-
if (started) {
|
126
|
-
throw new IllegalStateException("System already initialized");
|
127
|
-
}
|
128
|
-
started = true;
|
129
|
-
|
130
|
-
ImmutableList.Builder<Module> moduleList = ImmutableList.builder();
|
131
|
-
|
132
|
-
moduleList.addAll(modules);
|
133
|
-
|
134
|
-
moduleList.add(new Module()
|
135
|
-
{
|
136
|
-
@Override
|
137
|
-
public void configure(Binder binder)
|
138
|
-
{
|
139
|
-
binder.disableCircularProxies();
|
140
|
-
if (requireExplicitBindings) {
|
141
|
-
binder.requireExplicitBindings();
|
142
|
-
}
|
143
|
-
}
|
144
|
-
});
|
145
|
-
|
146
|
-
moduleList.add(new LifeCycleModule());
|
147
|
-
|
148
|
-
Injector injector = Guice.createInjector(Stage.PRODUCTION, moduleList.build());
|
149
|
-
|
150
|
-
LifeCycleManager lifeCycleManager = injector.getInstance(LifeCycleManager.class);
|
151
|
-
if (lifeCycleManager.size() > 0) {
|
152
|
-
lifeCycleManager.start();
|
153
|
-
}
|
154
|
-
|
155
|
-
return injector;
|
156
|
-
}
|
157
|
-
}
|
@@ -1,22 +0,0 @@
|
|
1
|
-
/*
|
2
|
-
* Copyright 2015 Sadayuki Furuhashi
|
3
|
-
*
|
4
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
-
* you may not use this file except in compliance with the License.
|
6
|
-
* You may obtain a copy of the License at
|
7
|
-
*
|
8
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
9
|
-
*
|
10
|
-
* Unless required by applicable law or agreed to in writing, software
|
11
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
-
* See the License for the specific language governing permissions and
|
14
|
-
* limitations under the License.
|
15
|
-
*/
|
16
|
-
package org.embulk.guice;
|
17
|
-
|
18
|
-
import com.google.inject.Injector;
|
19
|
-
|
20
|
-
public interface CloseableInjector
|
21
|
-
extends LifeCycleInjector, AutoCloseable
|
22
|
-
{ }
|
@@ -1,145 +0,0 @@
|
|
1
|
-
/*
|
2
|
-
* Copyright 2015 Sadayuki Furuhashi
|
3
|
-
*
|
4
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
-
* you may not use this file except in compliance with the License.
|
6
|
-
* You may obtain a copy of the License at
|
7
|
-
*
|
8
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
9
|
-
*
|
10
|
-
* Unless required by applicable law or agreed to in writing, software
|
11
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
-
* See the License for the specific language governing permissions and
|
14
|
-
* limitations under the License.
|
15
|
-
*/
|
16
|
-
package org.embulk.guice;
|
17
|
-
|
18
|
-
import com.google.inject.Binding;
|
19
|
-
import com.google.inject.Injector;
|
20
|
-
import com.google.inject.Key;
|
21
|
-
import com.google.inject.MembersInjector;
|
22
|
-
import com.google.inject.Module;
|
23
|
-
import com.google.inject.Provider;
|
24
|
-
import com.google.inject.Scope;
|
25
|
-
import com.google.inject.TypeLiteral;
|
26
|
-
import com.google.inject.spi.TypeConverterBinding;
|
27
|
-
|
28
|
-
import java.lang.annotation.Annotation;
|
29
|
-
import java.util.List;
|
30
|
-
import java.util.Map;
|
31
|
-
import java.util.Set;
|
32
|
-
|
33
|
-
abstract class InjectorProxy
|
34
|
-
implements Injector
|
35
|
-
{
|
36
|
-
protected abstract Injector injector();
|
37
|
-
|
38
|
-
@Override
|
39
|
-
public void injectMembers(Object instance)
|
40
|
-
{
|
41
|
-
injector().injectMembers(instance);
|
42
|
-
}
|
43
|
-
|
44
|
-
@Override
|
45
|
-
public <T> MembersInjector<T> getMembersInjector(TypeLiteral<T> typeLiteral)
|
46
|
-
{
|
47
|
-
return injector().getMembersInjector(typeLiteral);
|
48
|
-
}
|
49
|
-
|
50
|
-
@Override
|
51
|
-
public <T> MembersInjector<T> getMembersInjector(Class<T> type)
|
52
|
-
{
|
53
|
-
return injector().getMembersInjector(type);
|
54
|
-
}
|
55
|
-
|
56
|
-
@Override
|
57
|
-
public Map<Key<?>, Binding<?>> getBindings()
|
58
|
-
{
|
59
|
-
return injector().getBindings();
|
60
|
-
}
|
61
|
-
|
62
|
-
@Override
|
63
|
-
public Map<Key<?>, Binding<?>> getAllBindings()
|
64
|
-
{
|
65
|
-
return injector().getAllBindings();
|
66
|
-
}
|
67
|
-
|
68
|
-
@Override
|
69
|
-
public <T> Binding<T> getBinding(Key<T> key)
|
70
|
-
{
|
71
|
-
return injector().getBinding(key);
|
72
|
-
}
|
73
|
-
|
74
|
-
@Override
|
75
|
-
public <T> Binding<T> getBinding(Class<T> type)
|
76
|
-
{
|
77
|
-
return injector().getBinding(type);
|
78
|
-
}
|
79
|
-
|
80
|
-
@Override
|
81
|
-
public <T> Binding<T> getExistingBinding(Key<T> key)
|
82
|
-
{
|
83
|
-
return injector().getExistingBinding(key);
|
84
|
-
}
|
85
|
-
|
86
|
-
@Override
|
87
|
-
public <T> List<Binding<T>> findBindingsByType(TypeLiteral<T> type)
|
88
|
-
{
|
89
|
-
return injector().findBindingsByType(type);
|
90
|
-
}
|
91
|
-
|
92
|
-
@Override
|
93
|
-
public <T> Provider<T> getProvider(Key<T> key)
|
94
|
-
{
|
95
|
-
return injector().getProvider(key);
|
96
|
-
}
|
97
|
-
|
98
|
-
@Override
|
99
|
-
public <T> Provider<T> getProvider(Class<T> type)
|
100
|
-
{
|
101
|
-
return injector().getProvider(type);
|
102
|
-
}
|
103
|
-
|
104
|
-
@Override
|
105
|
-
public <T> T getInstance(Key<T> key)
|
106
|
-
{
|
107
|
-
return injector().getInstance(key);
|
108
|
-
}
|
109
|
-
|
110
|
-
@Override
|
111
|
-
public <T> T getInstance(Class<T> type)
|
112
|
-
{
|
113
|
-
return injector().getInstance(type);
|
114
|
-
}
|
115
|
-
|
116
|
-
@Override
|
117
|
-
public Injector getParent()
|
118
|
-
{
|
119
|
-
return injector().getParent();
|
120
|
-
}
|
121
|
-
|
122
|
-
@Override
|
123
|
-
public Injector createChildInjector(Iterable<? extends Module> modules)
|
124
|
-
{
|
125
|
-
return injector().createChildInjector(modules);
|
126
|
-
}
|
127
|
-
|
128
|
-
@Override
|
129
|
-
public Injector createChildInjector(Module... modules)
|
130
|
-
{
|
131
|
-
return injector().createChildInjector(modules);
|
132
|
-
}
|
133
|
-
|
134
|
-
@Override
|
135
|
-
public Map<Class<? extends Annotation>, Scope> getScopeBindings()
|
136
|
-
{
|
137
|
-
return injector().getScopeBindings();
|
138
|
-
}
|
139
|
-
|
140
|
-
@Override
|
141
|
-
public Set<TypeConverterBinding> getTypeConverterBindings()
|
142
|
-
{
|
143
|
-
return injector().getTypeConverterBindings();
|
144
|
-
}
|
145
|
-
}
|