embulk 0.8.39-java → 0.10.24-java

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 (597) hide show
  1. checksums.yaml +5 -5
  2. data/Gemfile +1 -1
  3. data/LICENSE +202 -0
  4. data/embulk.gemspec +34 -33
  5. data/lib/embulk.rb +5 -61
  6. data/lib/embulk/buffer.rb +1 -2
  7. data/lib/embulk/guess/charset.rb +2 -11
  8. data/lib/embulk/java/bootstrap.rb +0 -1
  9. data/lib/embulk/java_plugin.rb +9 -1
  10. data/lib/embulk/page_builder.rb +2 -2
  11. data/lib/embulk/plugin.rb +2 -2
  12. data/lib/embulk/schema.rb +3 -4
  13. data/lib/embulk/version.rb +3 -22
  14. metadata +22 -757
  15. data/.gitignore +0 -15
  16. data/.ruby-version +0 -1
  17. data/.travis.yml +0 -28
  18. data/COPYING +0 -14
  19. data/Gemfile.lock +0 -30
  20. data/README.md +0 -229
  21. data/Rakefile +0 -26
  22. data/appveyor.yml +0 -28
  23. data/bin/embulk +0 -139
  24. data/build.gradle +0 -419
  25. data/embulk-cli/build.gradle +0 -9
  26. data/embulk-cli/src/main/bat/selfrun.bat +0 -107
  27. data/embulk-cli/src/main/java/org/embulk/cli/EmbulkArguments.java +0 -54
  28. data/embulk-cli/src/main/java/org/embulk/cli/EmbulkCommandLine.java +0 -227
  29. data/embulk-cli/src/main/java/org/embulk/cli/EmbulkCommandLineException.java +0 -25
  30. data/embulk-cli/src/main/java/org/embulk/cli/EmbulkExample.java +0 -86
  31. data/embulk-cli/src/main/java/org/embulk/cli/EmbulkMigrate.java +0 -480
  32. data/embulk-cli/src/main/java/org/embulk/cli/EmbulkNew.java +0 -419
  33. data/embulk-cli/src/main/java/org/embulk/cli/EmbulkRun.java +0 -786
  34. data/embulk-cli/src/main/java/org/embulk/cli/EmbulkSelfUpdate.java +0 -235
  35. data/embulk-cli/src/main/java/org/embulk/cli/EmbulkSubcommand.java +0 -47
  36. data/embulk-cli/src/main/java/org/embulk/cli/Main.java +0 -31
  37. data/embulk-cli/src/main/java/org/embulk/cli/parse/AbstractHelpLineDefinition.java +0 -15
  38. data/embulk-cli/src/main/java/org/embulk/cli/parse/CliHelpFormatterWithHelpMessages.java +0 -141
  39. data/embulk-cli/src/main/java/org/embulk/cli/parse/CliOptionsWithHelpMessages.java +0 -45
  40. data/embulk-cli/src/main/java/org/embulk/cli/parse/EmbulkCommandLineHelpRequired.java +0 -10
  41. data/embulk-cli/src/main/java/org/embulk/cli/parse/EmbulkCommandLineParseException.java +0 -25
  42. data/embulk-cli/src/main/java/org/embulk/cli/parse/EmbulkCommandLineParser.java +0 -187
  43. data/embulk-cli/src/main/java/org/embulk/cli/parse/HelpMessageAsCliOption.java +0 -36
  44. data/embulk-cli/src/main/java/org/embulk/cli/parse/HelpMessageLineDefinition.java +0 -20
  45. data/embulk-cli/src/main/java/org/embulk/cli/parse/OptionBehavior.java +0 -39
  46. data/embulk-cli/src/main/java/org/embulk/cli/parse/OptionDefinition.java +0 -120
  47. data/embulk-cli/src/main/sh/selfrun.sh +0 -60
  48. data/embulk-cli/src/test/java/org/embulk/cli/DummyMain.java +0 -23
  49. data/embulk-cli/src/test/java/org/embulk/cli/SelfrunTest.java +0 -296
  50. data/embulk-core/build.gradle +0 -83
  51. data/embulk-core/src/main/java/org/embulk/EmbulkEmbed.java +0 -321
  52. data/embulk-core/src/main/java/org/embulk/EmbulkRunner.java +0 -531
  53. data/embulk-core/src/main/java/org/embulk/EmbulkService.java +0 -78
  54. data/embulk-core/src/main/java/org/embulk/EmbulkSetup.java +0 -49
  55. data/embulk-core/src/main/java/org/embulk/EmbulkVersion.java +0 -109
  56. data/embulk-core/src/main/java/org/embulk/command/PreviewPrinter.java +0 -87
  57. data/embulk-core/src/main/java/org/embulk/command/TablePreviewPrinter.java +0 -107
  58. data/embulk-core/src/main/java/org/embulk/command/VerticalPreviewPrinter.java +0 -47
  59. data/embulk-core/src/main/java/org/embulk/config/CommitReport.java +0 -36
  60. data/embulk-core/src/main/java/org/embulk/config/Config.java +0 -15
  61. data/embulk-core/src/main/java/org/embulk/config/ConfigDefault.java +0 -15
  62. data/embulk-core/src/main/java/org/embulk/config/ConfigDiff.java +0 -32
  63. data/embulk-core/src/main/java/org/embulk/config/ConfigException.java +0 -26
  64. data/embulk-core/src/main/java/org/embulk/config/ConfigInject.java +0 -14
  65. data/embulk-core/src/main/java/org/embulk/config/ConfigLoader.java +0 -149
  66. data/embulk-core/src/main/java/org/embulk/config/ConfigSource.java +0 -34
  67. data/embulk-core/src/main/java/org/embulk/config/DataSource.java +0 -41
  68. data/embulk-core/src/main/java/org/embulk/config/DataSourceImpl.java +0 -243
  69. data/embulk-core/src/main/java/org/embulk/config/DataSourceSerDe.java +0 -84
  70. data/embulk-core/src/main/java/org/embulk/config/GenericTypeReference.java +0 -20
  71. data/embulk-core/src/main/java/org/embulk/config/ModelManager.java +0 -123
  72. data/embulk-core/src/main/java/org/embulk/config/Task.java +0 -10
  73. data/embulk-core/src/main/java/org/embulk/config/TaskInvocationHandler.java +0 -180
  74. data/embulk-core/src/main/java/org/embulk/config/TaskReport.java +0 -32
  75. data/embulk-core/src/main/java/org/embulk/config/TaskSerDe.java +0 -349
  76. data/embulk-core/src/main/java/org/embulk/config/TaskSource.java +0 -34
  77. data/embulk-core/src/main/java/org/embulk/config/TaskValidationException.java +0 -38
  78. data/embulk-core/src/main/java/org/embulk/config/TaskValidator.java +0 -24
  79. data/embulk-core/src/main/java/org/embulk/config/UserDataException.java +0 -4
  80. data/embulk-core/src/main/java/org/embulk/config/UserDataExceptions.java +0 -17
  81. data/embulk-core/src/main/java/org/embulk/config/YamlTagResolver.java +0 -53
  82. data/embulk-core/src/main/java/org/embulk/exec/BufferFileInputPlugin.java +0 -88
  83. data/embulk-core/src/main/java/org/embulk/exec/BulkLoader.java +0 -754
  84. data/embulk-core/src/main/java/org/embulk/exec/ConfigurableGuessInputPlugin.java +0 -9
  85. data/embulk-core/src/main/java/org/embulk/exec/ExecModule.java +0 -53
  86. data/embulk-core/src/main/java/org/embulk/exec/ExecutionInterruptedException.java +0 -10
  87. data/embulk-core/src/main/java/org/embulk/exec/ExecutionResult.java +0 -33
  88. data/embulk-core/src/main/java/org/embulk/exec/ExtensionServiceLoaderModule.java +0 -43
  89. data/embulk-core/src/main/java/org/embulk/exec/ForGuess.java +0 -16
  90. data/embulk-core/src/main/java/org/embulk/exec/ForSystemConfig.java +0 -16
  91. data/embulk-core/src/main/java/org/embulk/exec/GuessExecutor.java +0 -309
  92. data/embulk-core/src/main/java/org/embulk/exec/LocalExecutorPlugin.java +0 -563
  93. data/embulk-core/src/main/java/org/embulk/exec/LoggerProvider.java +0 -68
  94. data/embulk-core/src/main/java/org/embulk/exec/NoSampleException.java +0 -10
  95. data/embulk-core/src/main/java/org/embulk/exec/PartialExecutionException.java +0 -26
  96. data/embulk-core/src/main/java/org/embulk/exec/PooledBufferAllocator.java +0 -77
  97. data/embulk-core/src/main/java/org/embulk/exec/PreviewExecutor.java +0 -222
  98. data/embulk-core/src/main/java/org/embulk/exec/PreviewResult.java +0 -27
  99. data/embulk-core/src/main/java/org/embulk/exec/PreviewedNoticeError.java +0 -17
  100. data/embulk-core/src/main/java/org/embulk/exec/ResumeState.java +0 -100
  101. data/embulk-core/src/main/java/org/embulk/exec/SamplingParserPlugin.java +0 -215
  102. data/embulk-core/src/main/java/org/embulk/exec/SetCurrentThreadName.java +0 -22
  103. data/embulk-core/src/main/java/org/embulk/exec/SkipTransactionException.java +0 -23
  104. data/embulk-core/src/main/java/org/embulk/exec/SystemConfigModule.java +0 -24
  105. data/embulk-core/src/main/java/org/embulk/exec/TempFileAllocator.java +0 -35
  106. data/embulk-core/src/main/java/org/embulk/exec/TransactionStage.java +0 -27
  107. data/embulk-core/src/main/java/org/embulk/jruby/JRubyPluginSource.java +0 -76
  108. data/embulk-core/src/main/java/org/embulk/jruby/JRubyScriptingModule.java +0 -395
  109. data/embulk-core/src/main/java/org/embulk/plugin/BuiltinPluginSourceModule.java +0 -17
  110. data/embulk-core/src/main/java/org/embulk/plugin/DefaultPluginType.java +0 -50
  111. data/embulk-core/src/main/java/org/embulk/plugin/InjectedPluginSource.java +0 -100
  112. data/embulk-core/src/main/java/org/embulk/plugin/MavenPluginType.java +0 -112
  113. data/embulk-core/src/main/java/org/embulk/plugin/PluginClassLoader.java +0 -993
  114. data/embulk-core/src/main/java/org/embulk/plugin/PluginClassLoaderFactory.java +0 -16
  115. data/embulk-core/src/main/java/org/embulk/plugin/PluginClassLoaderModule.java +0 -102
  116. data/embulk-core/src/main/java/org/embulk/plugin/PluginManager.java +0 -78
  117. data/embulk-core/src/main/java/org/embulk/plugin/PluginSource.java +0 -49
  118. data/embulk-core/src/main/java/org/embulk/plugin/PluginSourceNotMatchException.java +0 -25
  119. data/embulk-core/src/main/java/org/embulk/plugin/PluginType.java +0 -122
  120. data/embulk-core/src/main/java/org/embulk/plugin/compat/InputPluginWrapper.java +0 -102
  121. data/embulk-core/src/main/java/org/embulk/plugin/compat/PluginWrappers.java +0 -30
  122. data/embulk-core/src/main/java/org/embulk/plugin/compat/TransactionalFileInputWrapper.java +0 -96
  123. data/embulk-core/src/main/java/org/embulk/plugin/compat/TransactionalFileOutputWrapper.java +0 -102
  124. data/embulk-core/src/main/java/org/embulk/plugin/compat/TransactionalPageOutputWrapper.java +0 -95
  125. data/embulk-core/src/main/java/org/embulk/plugin/jar/InvalidJarPluginException.java +0 -14
  126. data/embulk-core/src/main/java/org/embulk/plugin/jar/JarPluginLoader.java +0 -232
  127. data/embulk-core/src/main/java/org/embulk/plugin/maven/MavenArtifactFinder.java +0 -134
  128. data/embulk-core/src/main/java/org/embulk/plugin/maven/MavenArtifactNotFoundException.java +0 -20
  129. data/embulk-core/src/main/java/org/embulk/plugin/maven/MavenPluginSource.java +0 -187
  130. data/embulk-core/src/main/java/org/embulk/plugin/maven/MavenPluginSourceModule.java +0 -22
  131. data/embulk-core/src/main/java/org/embulk/plugin/maven/MavenRepositoryNotFoundException.java +0 -31
  132. data/embulk-core/src/main/java/org/embulk/spi/AbortTransactionResource.java +0 -36
  133. data/embulk-core/src/main/java/org/embulk/spi/Buffer.java +0 -148
  134. data/embulk-core/src/main/java/org/embulk/spi/BufferAllocator.java +0 -8
  135. data/embulk-core/src/main/java/org/embulk/spi/CloseResource.java +0 -42
  136. data/embulk-core/src/main/java/org/embulk/spi/Column.java +0 -95
  137. data/embulk-core/src/main/java/org/embulk/spi/ColumnConfig.java +0 -112
  138. data/embulk-core/src/main/java/org/embulk/spi/ColumnVisitor.java +0 -16
  139. data/embulk-core/src/main/java/org/embulk/spi/DataException.java +0 -23
  140. data/embulk-core/src/main/java/org/embulk/spi/DecoderPlugin.java +0 -16
  141. data/embulk-core/src/main/java/org/embulk/spi/EncoderPlugin.java +0 -16
  142. data/embulk-core/src/main/java/org/embulk/spi/Exec.java +0 -113
  143. data/embulk-core/src/main/java/org/embulk/spi/ExecAction.java +0 -6
  144. data/embulk-core/src/main/java/org/embulk/spi/ExecSession.java +0 -220
  145. data/embulk-core/src/main/java/org/embulk/spi/ExecutorPlugin.java +0 -19
  146. data/embulk-core/src/main/java/org/embulk/spi/Extension.java +0 -44
  147. data/embulk-core/src/main/java/org/embulk/spi/FileInput.java +0 -11
  148. data/embulk-core/src/main/java/org/embulk/spi/FileInputPlugin.java +0 -30
  149. data/embulk-core/src/main/java/org/embulk/spi/FileInputRunner.java +0 -169
  150. data/embulk-core/src/main/java/org/embulk/spi/FileOutput.java +0 -13
  151. data/embulk-core/src/main/java/org/embulk/spi/FileOutputPlugin.java +0 -28
  152. data/embulk-core/src/main/java/org/embulk/spi/FileOutputRunner.java +0 -199
  153. data/embulk-core/src/main/java/org/embulk/spi/FilterPlugin.java +0 -18
  154. data/embulk-core/src/main/java/org/embulk/spi/FormatterPlugin.java +0 -18
  155. data/embulk-core/src/main/java/org/embulk/spi/GuessPlugin.java +0 -9
  156. data/embulk-core/src/main/java/org/embulk/spi/InputPlugin.java +0 -33
  157. data/embulk-core/src/main/java/org/embulk/spi/OutputPlugin.java +0 -29
  158. data/embulk-core/src/main/java/org/embulk/spi/Page.java +0 -86
  159. data/embulk-core/src/main/java/org/embulk/spi/PageBuilder.java +0 -696
  160. data/embulk-core/src/main/java/org/embulk/spi/PageFormat.java +0 -47
  161. data/embulk-core/src/main/java/org/embulk/spi/PageOutput.java +0 -11
  162. data/embulk-core/src/main/java/org/embulk/spi/PageReader.java +0 -248
  163. data/embulk-core/src/main/java/org/embulk/spi/ParserPlugin.java +0 -17
  164. data/embulk-core/src/main/java/org/embulk/spi/ProcessState.java +0 -10
  165. data/embulk-core/src/main/java/org/embulk/spi/ProcessTask.java +0 -117
  166. data/embulk-core/src/main/java/org/embulk/spi/Schema.java +0 -139
  167. data/embulk-core/src/main/java/org/embulk/spi/SchemaConfig.java +0 -93
  168. data/embulk-core/src/main/java/org/embulk/spi/SchemaConfigException.java +0 -22
  169. data/embulk-core/src/main/java/org/embulk/spi/TaskState.java +0 -81
  170. data/embulk-core/src/main/java/org/embulk/spi/TempFileException.java +0 -19
  171. data/embulk-core/src/main/java/org/embulk/spi/TempFileSpace.java +0 -88
  172. data/embulk-core/src/main/java/org/embulk/spi/Transactional.java +0 -10
  173. data/embulk-core/src/main/java/org/embulk/spi/TransactionalFileInput.java +0 -17
  174. data/embulk-core/src/main/java/org/embulk/spi/TransactionalFileOutput.java +0 -19
  175. data/embulk-core/src/main/java/org/embulk/spi/TransactionalPageOutput.java +0 -17
  176. data/embulk-core/src/main/java/org/embulk/spi/json/JsonParseException.java +0 -17
  177. data/embulk-core/src/main/java/org/embulk/spi/json/JsonParser.java +0 -233
  178. data/embulk-core/src/main/java/org/embulk/spi/json/RubyValueApi.java +0 -100
  179. data/embulk-core/src/main/java/org/embulk/spi/time/DateTimeZoneSerDe.java +0 -55
  180. data/embulk-core/src/main/java/org/embulk/spi/time/Timestamp.java +0 -180
  181. data/embulk-core/src/main/java/org/embulk/spi/time/TimestampFormat.java +0 -158
  182. data/embulk-core/src/main/java/org/embulk/spi/time/TimestampFormatter.java +0 -125
  183. data/embulk-core/src/main/java/org/embulk/spi/time/TimestampParseException.java +0 -12
  184. data/embulk-core/src/main/java/org/embulk/spi/time/TimestampParser.java +0 -310
  185. data/embulk-core/src/main/java/org/embulk/spi/time/TimestampSerDe.java +0 -49
  186. data/embulk-core/src/main/java/org/embulk/spi/type/AbstractType.java +0 -58
  187. data/embulk-core/src/main/java/org/embulk/spi/type/BooleanType.java +0 -12
  188. data/embulk-core/src/main/java/org/embulk/spi/type/DoubleType.java +0 -12
  189. data/embulk-core/src/main/java/org/embulk/spi/type/JsonType.java +0 -14
  190. data/embulk-core/src/main/java/org/embulk/spi/type/LongType.java +0 -12
  191. data/embulk-core/src/main/java/org/embulk/spi/type/StringType.java +0 -12
  192. data/embulk-core/src/main/java/org/embulk/spi/type/TimestampType.java +0 -41
  193. data/embulk-core/src/main/java/org/embulk/spi/type/Type.java +0 -15
  194. data/embulk-core/src/main/java/org/embulk/spi/type/TypeDeserializer.java +0 -45
  195. data/embulk-core/src/main/java/org/embulk/spi/type/Types.java +0 -16
  196. data/embulk-core/src/main/java/org/embulk/spi/unit/ByteSize.java +0 -156
  197. data/embulk-core/src/main/java/org/embulk/spi/unit/LocalFile.java +0 -106
  198. data/embulk-core/src/main/java/org/embulk/spi/unit/LocalFileSerDe.java +0 -113
  199. data/embulk-core/src/main/java/org/embulk/spi/unit/ToString.java +0 -54
  200. data/embulk-core/src/main/java/org/embulk/spi/unit/ToStringMap.java +0 -34
  201. data/embulk-core/src/main/java/org/embulk/spi/util/CharsetSerDe.java +0 -55
  202. data/embulk-core/src/main/java/org/embulk/spi/util/Decoders.java +0 -81
  203. data/embulk-core/src/main/java/org/embulk/spi/util/DynamicColumnNotFoundException.java +0 -10
  204. data/embulk-core/src/main/java/org/embulk/spi/util/DynamicColumnSetter.java +0 -21
  205. data/embulk-core/src/main/java/org/embulk/spi/util/DynamicColumnSetterFactory.java +0 -134
  206. data/embulk-core/src/main/java/org/embulk/spi/util/DynamicPageBuilder.java +0 -200
  207. data/embulk-core/src/main/java/org/embulk/spi/util/Encoders.java +0 -81
  208. data/embulk-core/src/main/java/org/embulk/spi/util/Executors.java +0 -93
  209. data/embulk-core/src/main/java/org/embulk/spi/util/FileInputInputStream.java +0 -111
  210. data/embulk-core/src/main/java/org/embulk/spi/util/FileOutputOutputStream.java +0 -119
  211. data/embulk-core/src/main/java/org/embulk/spi/util/Filters.java +0 -100
  212. data/embulk-core/src/main/java/org/embulk/spi/util/InputStreamFileInput.java +0 -189
  213. data/embulk-core/src/main/java/org/embulk/spi/util/InputStreamTransactionalFileInput.java +0 -25
  214. data/embulk-core/src/main/java/org/embulk/spi/util/Inputs.java +0 -65
  215. data/embulk-core/src/main/java/org/embulk/spi/util/LineDecoder.java +0 -157
  216. data/embulk-core/src/main/java/org/embulk/spi/util/LineEncoder.java +0 -123
  217. data/embulk-core/src/main/java/org/embulk/spi/util/ListFileInput.java +0 -52
  218. data/embulk-core/src/main/java/org/embulk/spi/util/Newline.java +0 -38
  219. data/embulk-core/src/main/java/org/embulk/spi/util/OutputStreamFileOutput.java +0 -88
  220. data/embulk-core/src/main/java/org/embulk/spi/util/PagePrinter.java +0 -126
  221. data/embulk-core/src/main/java/org/embulk/spi/util/Pages.java +0 -149
  222. data/embulk-core/src/main/java/org/embulk/spi/util/ResumableInputStream.java +0 -168
  223. data/embulk-core/src/main/java/org/embulk/spi/util/RetryExecutor.java +0 -130
  224. data/embulk-core/src/main/java/org/embulk/spi/util/Timestamps.java +0 -53
  225. data/embulk-core/src/main/java/org/embulk/spi/util/dynamic/AbstractDynamicColumnSetter.java +0 -94
  226. data/embulk-core/src/main/java/org/embulk/spi/util/dynamic/BooleanColumnSetter.java +0 -71
  227. data/embulk-core/src/main/java/org/embulk/spi/util/dynamic/DefaultValueSetter.java +0 -20
  228. data/embulk-core/src/main/java/org/embulk/spi/util/dynamic/DoubleColumnSetter.java +0 -68
  229. data/embulk-core/src/main/java/org/embulk/spi/util/dynamic/JsonColumnSetter.java +0 -64
  230. data/embulk-core/src/main/java/org/embulk/spi/util/dynamic/LongColumnSetter.java +0 -78
  231. data/embulk-core/src/main/java/org/embulk/spi/util/dynamic/NullDefaultValueSetter.java +0 -39
  232. data/embulk-core/src/main/java/org/embulk/spi/util/dynamic/SkipColumnSetter.java +0 -68
  233. data/embulk-core/src/main/java/org/embulk/spi/util/dynamic/StringColumnSetter.java +0 -63
  234. data/embulk-core/src/main/java/org/embulk/spi/util/dynamic/TimestampColumnSetter.java +0 -72
  235. data/embulk-core/src/main/resources/embulk/logback-color.xml +0 -72
  236. data/embulk-core/src/main/resources/embulk/logback-console.xml +0 -14
  237. data/embulk-core/src/main/resources/embulk/logback-file.xml +0 -23
  238. data/embulk-core/src/main/resources/embulk/parent_first_packages.properties +0 -73
  239. data/embulk-core/src/main/resources/embulk/parent_first_resources.properties +0 -29
  240. data/embulk-core/src/test/java/org/embulk/EmbulkTestRuntime.java +0 -122
  241. data/embulk-core/src/test/java/org/embulk/GuiceBinder.java +0 -72
  242. data/embulk-core/src/test/java/org/embulk/RandomManager.java +0 -53
  243. data/embulk-core/src/test/java/org/embulk/TestPluginSourceModule.java +0 -23
  244. data/embulk-core/src/test/java/org/embulk/TestUtilityModule.java +0 -17
  245. data/embulk-core/src/test/java/org/embulk/config/TestConfigLoader.java +0 -66
  246. data/embulk-core/src/test/java/org/embulk/config/TestConfigSource.java +0 -114
  247. data/embulk-core/src/test/java/org/embulk/config/TestTaskSource.java +0 -70
  248. data/embulk-core/src/test/java/org/embulk/plugin/MockPluginSource.java +0 -58
  249. data/embulk-core/src/test/java/org/embulk/plugin/TestPluginType.java +0 -83
  250. data/embulk-core/src/test/java/org/embulk/plugin/TestPluginTypeSerDe.java +0 -67
  251. data/embulk-core/src/test/java/org/embulk/plugin/jar/ExampleJarSpiV0.java +0 -9
  252. data/embulk-core/src/test/java/org/embulk/plugin/jar/JarBuilder.java +0 -101
  253. data/embulk-core/src/test/java/org/embulk/plugin/jar/TestJarPluginLoader.java +0 -60
  254. data/embulk-core/src/test/java/org/embulk/plugin/maven/TestMavenArtifactFinder.java +0 -41
  255. data/embulk-core/src/test/java/org/embulk/spi/MockFileOutput.java +0 -63
  256. data/embulk-core/src/test/java/org/embulk/spi/MockFormatterPlugin.java +0 -108
  257. data/embulk-core/src/test/java/org/embulk/spi/MockParserPlugin.java +0 -80
  258. data/embulk-core/src/test/java/org/embulk/spi/PageTestUtils.java +0 -59
  259. data/embulk-core/src/test/java/org/embulk/spi/TestBuffer.java +0 -24
  260. data/embulk-core/src/test/java/org/embulk/spi/TestFileInputInputStream.java +0 -89
  261. data/embulk-core/src/test/java/org/embulk/spi/TestFileInputRunner.java +0 -199
  262. data/embulk-core/src/test/java/org/embulk/spi/TestFileOutputRunner.java +0 -221
  263. data/embulk-core/src/test/java/org/embulk/spi/TestInputStreamFileInput.java +0 -188
  264. data/embulk-core/src/test/java/org/embulk/spi/TestPageBuilderReader.java +0 -411
  265. data/embulk-core/src/test/java/org/embulk/spi/json/TestJsonParser.java +0 -102
  266. data/embulk-core/src/test/java/org/embulk/spi/time/TestTimestamp.java +0 -116
  267. data/embulk-core/src/test/java/org/embulk/spi/time/TestTimestampFormatterParser.java +0 -75
  268. data/embulk-core/src/test/java/org/embulk/spi/time/TestTimestampFormatterParserDeprecated.java +0 -67
  269. data/embulk-core/src/test/java/org/embulk/spi/time/TestTimestampParser.java +0 -247
  270. data/embulk-core/src/test/java/org/embulk/spi/type/TestTypeSerDe.java +0 -45
  271. data/embulk-core/src/test/java/org/embulk/spi/unit/TestByteSize.java +0 -79
  272. data/embulk-core/src/test/java/org/embulk/spi/util/TestLineDecoder.java +0 -237
  273. data/embulk-core/src/test/java/org/embulk/spi/util/TestLineEncoder.java +0 -123
  274. data/embulk-core/src/test/resources/m2.test/.gitignore +0 -1
  275. data/embulk-core/src/test/resources/m2.test/org/embulk/example/embulk-example-maven-artifact/0.1.2/embulk-example-maven-artifact-0.1.2.jar +0 -0
  276. data/embulk-core/src/test/resources/m2.test/org/embulk/example/embulk-example-maven-artifact/0.1.2/embulk-example-maven-artifact-0.1.2.jar.sha1 +0 -1
  277. data/embulk-core/src/test/resources/m2.test/org/embulk/example/embulk-example-maven-artifact/0.1.2/embulk-example-maven-artifact-0.1.2.pom +0 -9
  278. data/embulk-core/src/test/resources/m2.test/org/embulk/example/embulk-example-maven-artifact/0.1.2/embulk-example-maven-artifact-0.1.2.pom.sha1 +0 -1
  279. data/embulk-docs/Makefile +0 -178
  280. data/embulk-docs/build.gradle +0 -41
  281. data/embulk-docs/make.bat +0 -243
  282. data/embulk-docs/push-gh-pages.sh +0 -49
  283. data/embulk-docs/src/_static/embulk-architecture.png +0 -0
  284. data/embulk-docs/src/_static/embulk-logo-v2/embulk-logo-v2-oneline-tr.png +0 -0
  285. data/embulk-docs/src/_static/embulk-logo-v2/embulk-logo-v2-oneline-wt.png +0 -0
  286. data/embulk-docs/src/_static/embulk-logo-v2/embulk-logo-v2-oneline.ai +0 -396
  287. data/embulk-docs/src/_static/embulk-logo-v2/embulk-logo-v2-sq-tr-small.png +0 -0
  288. data/embulk-docs/src/_static/embulk-logo-v2/embulk-logo-v2-sq-tr.png +0 -0
  289. data/embulk-docs/src/_static/embulk-logo-v2/embulk-logo-v2-sq-wt.png +0 -0
  290. data/embulk-docs/src/_static/embulk-logo-v2/embulk-logo-v2-sq.ai +0 -417
  291. data/embulk-docs/src/_static/embulk-logo-v2/embulk-logo-v2-sq.svg +0 -1
  292. data/embulk-docs/src/_static/embulk-logo-v2/embulk-logo-v2-symbol-tr.png +0 -0
  293. data/embulk-docs/src/_static/embulk-logo-v2/embulk-logo-v2-symbol-wt.png +0 -0
  294. data/embulk-docs/src/_static/embulk-logo-v2/embulk-logo-v2-symbol.ai +1 -394
  295. data/embulk-docs/src/_static/embulk-logo.svg +0 -133
  296. data/embulk-docs/src/built-in.rst +0 -1017
  297. data/embulk-docs/src/conf.py +0 -260
  298. data/embulk-docs/src/customization.rst +0 -184
  299. data/embulk-docs/src/developers/index.rst +0 -45
  300. data/embulk-docs/src/index.rst +0 -102
  301. data/embulk-docs/src/logo.rst +0 -27
  302. data/embulk-docs/src/recipe.rst +0 -8
  303. data/embulk-docs/src/recipe/scheduled-csv-load-to-elasticsearch-kibana5.rst +0 -163
  304. data/embulk-docs/src/release.rst +0 -109
  305. data/embulk-docs/src/release/release-0.1.0.rst +0 -8
  306. data/embulk-docs/src/release/release-0.2.0.rst +0 -16
  307. data/embulk-docs/src/release/release-0.2.1.rst +0 -19
  308. data/embulk-docs/src/release/release-0.3.0.rst +0 -34
  309. data/embulk-docs/src/release/release-0.3.1.rst +0 -11
  310. data/embulk-docs/src/release/release-0.3.2.rst +0 -15
  311. data/embulk-docs/src/release/release-0.4.0.rst +0 -74
  312. data/embulk-docs/src/release/release-0.4.1.rst +0 -18
  313. data/embulk-docs/src/release/release-0.4.10.rst +0 -17
  314. data/embulk-docs/src/release/release-0.4.2.rst +0 -18
  315. data/embulk-docs/src/release/release-0.4.3.rst +0 -34
  316. data/embulk-docs/src/release/release-0.4.4.rst +0 -39
  317. data/embulk-docs/src/release/release-0.4.5.rst +0 -24
  318. data/embulk-docs/src/release/release-0.4.6.rst +0 -30
  319. data/embulk-docs/src/release/release-0.4.7.rst +0 -16
  320. data/embulk-docs/src/release/release-0.4.8.rst +0 -15
  321. data/embulk-docs/src/release/release-0.4.9.rst +0 -23
  322. data/embulk-docs/src/release/release-0.5.0.rst +0 -89
  323. data/embulk-docs/src/release/release-0.5.1.rst +0 -13
  324. data/embulk-docs/src/release/release-0.5.2.rst +0 -30
  325. data/embulk-docs/src/release/release-0.5.3.rst +0 -22
  326. data/embulk-docs/src/release/release-0.5.4.rst +0 -24
  327. data/embulk-docs/src/release/release-0.5.5.rst +0 -18
  328. data/embulk-docs/src/release/release-0.6.0.rst +0 -34
  329. data/embulk-docs/src/release/release-0.6.1.rst +0 -11
  330. data/embulk-docs/src/release/release-0.6.10.rst +0 -15
  331. data/embulk-docs/src/release/release-0.6.11.rst +0 -19
  332. data/embulk-docs/src/release/release-0.6.12.rst +0 -31
  333. data/embulk-docs/src/release/release-0.6.13.rst +0 -23
  334. data/embulk-docs/src/release/release-0.6.14.rst +0 -47
  335. data/embulk-docs/src/release/release-0.6.15.rst +0 -26
  336. data/embulk-docs/src/release/release-0.6.16.rst +0 -26
  337. data/embulk-docs/src/release/release-0.6.17.rst +0 -39
  338. data/embulk-docs/src/release/release-0.6.18.rst +0 -14
  339. data/embulk-docs/src/release/release-0.6.19.rst +0 -18
  340. data/embulk-docs/src/release/release-0.6.2.rst +0 -17
  341. data/embulk-docs/src/release/release-0.6.20.rst +0 -19
  342. data/embulk-docs/src/release/release-0.6.21.rst +0 -20
  343. data/embulk-docs/src/release/release-0.6.22.rst +0 -26
  344. data/embulk-docs/src/release/release-0.6.23.rst +0 -17
  345. data/embulk-docs/src/release/release-0.6.24.rst +0 -13
  346. data/embulk-docs/src/release/release-0.6.25.rst +0 -12
  347. data/embulk-docs/src/release/release-0.6.26.rst +0 -17
  348. data/embulk-docs/src/release/release-0.6.27.rst +0 -11
  349. data/embulk-docs/src/release/release-0.6.3.rst +0 -23
  350. data/embulk-docs/src/release/release-0.6.4.rst +0 -13
  351. data/embulk-docs/src/release/release-0.6.5.rst +0 -17
  352. data/embulk-docs/src/release/release-0.6.6.rst +0 -17
  353. data/embulk-docs/src/release/release-0.6.7.rst +0 -17
  354. data/embulk-docs/src/release/release-0.6.8.rst +0 -24
  355. data/embulk-docs/src/release/release-0.6.9.rst +0 -24
  356. data/embulk-docs/src/release/release-0.7.0.rst +0 -96
  357. data/embulk-docs/src/release/release-0.7.1.rst +0 -22
  358. data/embulk-docs/src/release/release-0.7.10.rst +0 -13
  359. data/embulk-docs/src/release/release-0.7.11.rst +0 -12
  360. data/embulk-docs/src/release/release-0.7.2.rst +0 -25
  361. data/embulk-docs/src/release/release-0.7.3.rst +0 -21
  362. data/embulk-docs/src/release/release-0.7.4.rst +0 -14
  363. data/embulk-docs/src/release/release-0.7.5.rst +0 -22
  364. data/embulk-docs/src/release/release-0.7.6.rst +0 -18
  365. data/embulk-docs/src/release/release-0.7.7.rst +0 -13
  366. data/embulk-docs/src/release/release-0.7.8.rst +0 -14
  367. data/embulk-docs/src/release/release-0.7.9.rst +0 -14
  368. data/embulk-docs/src/release/release-0.8.0.rst +0 -74
  369. data/embulk-docs/src/release/release-0.8.1.rst +0 -18
  370. data/embulk-docs/src/release/release-0.8.10.rst +0 -35
  371. data/embulk-docs/src/release/release-0.8.11.rst +0 -12
  372. data/embulk-docs/src/release/release-0.8.12.rst +0 -12
  373. data/embulk-docs/src/release/release-0.8.13.rst +0 -12
  374. data/embulk-docs/src/release/release-0.8.14.rst +0 -31
  375. data/embulk-docs/src/release/release-0.8.15.rst +0 -17
  376. data/embulk-docs/src/release/release-0.8.16.rst +0 -43
  377. data/embulk-docs/src/release/release-0.8.17.rst +0 -11
  378. data/embulk-docs/src/release/release-0.8.18.rst +0 -27
  379. data/embulk-docs/src/release/release-0.8.19.rst +0 -43
  380. data/embulk-docs/src/release/release-0.8.2.rst +0 -19
  381. data/embulk-docs/src/release/release-0.8.20.rst +0 -11
  382. data/embulk-docs/src/release/release-0.8.21.rst +0 -17
  383. data/embulk-docs/src/release/release-0.8.22.rst +0 -15
  384. data/embulk-docs/src/release/release-0.8.23.rst +0 -14
  385. data/embulk-docs/src/release/release-0.8.24.rst +0 -15
  386. data/embulk-docs/src/release/release-0.8.25.rst +0 -14
  387. data/embulk-docs/src/release/release-0.8.26.rst +0 -16
  388. data/embulk-docs/src/release/release-0.8.27.rst +0 -15
  389. data/embulk-docs/src/release/release-0.8.28.rst +0 -14
  390. data/embulk-docs/src/release/release-0.8.29.rst +0 -14
  391. data/embulk-docs/src/release/release-0.8.3.rst +0 -15
  392. data/embulk-docs/src/release/release-0.8.30.rst +0 -14
  393. data/embulk-docs/src/release/release-0.8.31.rst +0 -12
  394. data/embulk-docs/src/release/release-0.8.32.rst +0 -14
  395. data/embulk-docs/src/release/release-0.8.33.rst +0 -13
  396. data/embulk-docs/src/release/release-0.8.34.rst +0 -12
  397. data/embulk-docs/src/release/release-0.8.35.rst +0 -12
  398. data/embulk-docs/src/release/release-0.8.36.rst +0 -32
  399. data/embulk-docs/src/release/release-0.8.37.rst +0 -20
  400. data/embulk-docs/src/release/release-0.8.38.rst +0 -12
  401. data/embulk-docs/src/release/release-0.8.39.rst +0 -12
  402. data/embulk-docs/src/release/release-0.8.4.rst +0 -18
  403. data/embulk-docs/src/release/release-0.8.5.rst +0 -11
  404. data/embulk-docs/src/release/release-0.8.6.rst +0 -14
  405. data/embulk-docs/src/release/release-0.8.7.rst +0 -18
  406. data/embulk-docs/src/release/release-0.8.8.rst +0 -18
  407. data/embulk-docs/src/release/release-0.8.9.rst +0 -14
  408. data/embulk-jruby-strptime/build.gradle +0 -3
  409. data/embulk-jruby-strptime/src/main/java/org/embulk/spi/time/RubyDateParser.java +0 -121
  410. data/embulk-jruby-strptime/src/main/java/org/embulk/spi/time/StrptimeFormat.java +0 -53
  411. data/embulk-jruby-strptime/src/main/java/org/embulk/spi/time/StrptimeParser.java +0 -884
  412. data/embulk-jruby-strptime/src/main/java/org/embulk/spi/time/StrptimeToken.java +0 -111
  413. data/embulk-jruby-strptime/src/main/java/org/embulk/spi/time/TimeZoneConverter.java +0 -466
  414. data/embulk-jruby-strptime/src/main/java/org/embulk/spi/time/lexer/StrptimeLexer.flex +0 -62
  415. data/embulk-jruby-strptime/src/main/java/org/embulk/spi/time/lexer/StrptimeLexer.java +0 -577
  416. data/embulk-standards/build.gradle +0 -7
  417. data/embulk-standards/src/main/java/org/embulk/standards/Bzip2FileDecoderPlugin.java +0 -55
  418. data/embulk-standards/src/main/java/org/embulk/standards/Bzip2FileEncoderPlugin.java +0 -67
  419. data/embulk-standards/src/main/java/org/embulk/standards/ConfigInputPlugin.java +0 -170
  420. data/embulk-standards/src/main/java/org/embulk/standards/CsvFormatterPlugin.java +0 -295
  421. data/embulk-standards/src/main/java/org/embulk/standards/CsvParserPlugin.java +0 -416
  422. data/embulk-standards/src/main/java/org/embulk/standards/CsvTokenizer.java +0 -545
  423. data/embulk-standards/src/main/java/org/embulk/standards/GzipFileDecoderPlugin.java +0 -55
  424. data/embulk-standards/src/main/java/org/embulk/standards/GzipFileEncoderPlugin.java +0 -71
  425. data/embulk-standards/src/main/java/org/embulk/standards/JsonParserPlugin.java +0 -235
  426. data/embulk-standards/src/main/java/org/embulk/standards/LocalFileInputPlugin.java +0 -232
  427. data/embulk-standards/src/main/java/org/embulk/standards/LocalFileOutputPlugin.java +0 -148
  428. data/embulk-standards/src/main/java/org/embulk/standards/NullOutputPlugin.java +0 -59
  429. data/embulk-standards/src/main/java/org/embulk/standards/RemoveColumnsFilterPlugin.java +0 -268
  430. data/embulk-standards/src/main/java/org/embulk/standards/RenameFilterPlugin.java +0 -479
  431. data/embulk-standards/src/main/java/org/embulk/standards/StandardPluginExtension.java +0 -16
  432. data/embulk-standards/src/main/java/org/embulk/standards/StandardPluginModule.java +0 -60
  433. data/embulk-standards/src/main/java/org/embulk/standards/StdoutOutputPlugin.java +0 -91
  434. data/embulk-standards/src/main/resources/META-INF/services/org.embulk.spi.Extension +0 -1
  435. data/embulk-standards/src/test/java/org/embulk/standards/TestCsvFormatterPlugin.java +0 -312
  436. data/embulk-standards/src/test/java/org/embulk/standards/TestCsvParserPlugin.java +0 -75
  437. data/embulk-standards/src/test/java/org/embulk/standards/TestCsvTokenizer.java +0 -457
  438. data/embulk-standards/src/test/java/org/embulk/standards/TestJsonParserPlugin.java +0 -351
  439. data/embulk-standards/src/test/java/org/embulk/standards/TestRemoveColumnsFilterPlugin.java +0 -121
  440. data/embulk-standards/src/test/java/org/embulk/standards/TestRenameFilterPlugin.java +0 -1020
  441. data/embulk-standards/src/test/java/org/embulk/standards/guess/TestCsvAllStringsGuessPlugin.java +0 -38
  442. data/embulk-standards/src/test/java/org/embulk/standards/guess/TestCsvGuessPlugin.java +0 -248
  443. data/embulk-standards/src/test/java/org/embulk/standards/preview/TestFilePreview.java +0 -73
  444. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_int_single_column_row.csv +0 -1
  445. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_int_single_column_row_and_header.csv +0 -2
  446. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_int_single_column_row_and_header_guessed.yml +0 -12
  447. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_int_single_column_row_and_header_seed.yml +0 -1
  448. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_int_single_column_row_guessed.yml +0 -12
  449. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_int_single_column_row_seed.yml +0 -1
  450. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows.csv +0 -1
  451. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_and_header.csv +0 -2
  452. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_and_header_guessed.yml +0 -16
  453. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_and_header_seed.yml +0 -1
  454. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_and_header_with_trim_needed.csv +0 -2
  455. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_and_header_with_trim_needed_guessed.yml +0 -16
  456. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_and_header_with_trim_needed_seed.yml +0 -1
  457. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_guessed.yml +0 -16
  458. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_seed.yml +0 -1
  459. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_with_trim_needed.csv +0 -1
  460. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_with_trim_needed_guessed.yml +0 -16
  461. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_with_trim_needed_seed.yml +0 -1
  462. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_string_single_column_row.csv +0 -1
  463. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_string_single_column_row_and_header.csv +0 -2
  464. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_string_single_column_row_and_header_guessed.yml +0 -12
  465. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_string_single_column_row_and_header_seed.yml +0 -1
  466. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_string_single_column_row_guessed.yml +0 -12
  467. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_string_single_column_row_seed.yml +0 -1
  468. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_int_single_column_rows.csv +0 -2
  469. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_int_single_column_rows_guessed.yml +0 -12
  470. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_int_single_column_rows_seed.yml +0 -1
  471. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_rows.csv +0 -2
  472. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_rows_and_header.csv +0 -3
  473. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_rows_and_header_guessed.yml +0 -16
  474. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_rows_and_header_seed.yml +0 -1
  475. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_rows_guessed.yml +0 -16
  476. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_rows_seed.yml +0 -1
  477. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_string_single_column_rows.csv +0 -2
  478. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_string_single_column_rows_guessed.yml +0 -12
  479. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_string_single_column_rows_seed.yml +0 -1
  480. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_backslash_escape.csv +0 -5
  481. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_backslash_escape_guessed.yml +0 -17
  482. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_backslash_escape_seed.yml +0 -1
  483. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_double_single_column.csv +0 -12
  484. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_double_single_column_guessed.yml +0 -12
  485. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_double_single_column_seed.yml +0 -1
  486. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_int_single_column.csv +0 -4
  487. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_int_single_column_guessed.yml +0 -12
  488. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_int_single_column_seed.yml +0 -1
  489. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_int_single_column_with_header.csv +0 -5
  490. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_int_single_column_with_header_guessed.yml +0 -12
  491. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_int_single_column_with_header_seed.yml +0 -1
  492. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_semicolon_delimiter.csv +0 -5
  493. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_semicolon_delimiter_guessed.yml +0 -17
  494. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_semicolon_delimiter_seed.yml +0 -1
  495. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_simple.csv +0 -5
  496. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_simple_guessed.yml +0 -17
  497. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_simple_seed.yml +0 -1
  498. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_single_quote.csv +0 -5
  499. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_single_quote_guessed.yml +0 -17
  500. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_single_quote_seed.yml +0 -1
  501. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_skip_suggest_if_empty_sample_records.csv +0 -5
  502. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_skip_suggest_if_empty_sample_records_guessed.yml +0 -2
  503. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_skip_suggest_if_empty_sample_records_seed.yml +0 -1
  504. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_string_single_column.csv +0 -4
  505. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_string_single_column_guessed.yml +0 -12
  506. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_string_single_column_seed.yml +0 -1
  507. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_string_single_column_with_header.csv +0 -5
  508. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_string_single_column_with_header_guessed.yml +0 -12
  509. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_string_single_column_with_header_seed.yml +0 -1
  510. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_tab_delimiter.csv +0 -4
  511. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_tab_delimiter_guessed.yml +0 -16
  512. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_tab_delimiter_seed.yml +0 -1
  513. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv_all_strings/test/test_simple.csv +0 -5
  514. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv_all_strings/test/test_simple_guessed.yml +0 -17
  515. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv_all_strings/test/test_simple_seed.yml +0 -1
  516. data/embulk-standards/src/test/resources/org/embulk/standards/preview/file/test/test_sample_buffer_bytes.csv +0 -5
  517. data/embulk-standards/src/test/resources/org/embulk/standards/preview/file/test/test_sample_buffer_bytes_exec.yml +0 -1
  518. data/embulk-standards/src/test/resources/org/embulk/standards/preview/file/test/test_sample_buffer_bytes_load.yml +0 -19
  519. data/embulk-standards/src/test/resources/org/embulk/standards/preview/file/test/test_sample_buffer_bytes_previewed.csv +0 -1
  520. data/embulk-standards/src/test/resources/org/embulk/standards/preview/file/test/test_simple.csv +0 -5
  521. data/embulk-standards/src/test/resources/org/embulk/standards/preview/file/test/test_simple_load.yml +0 -19
  522. data/embulk-standards/src/test/resources/org/embulk/standards/preview/file/test/test_simple_previewed.csv +0 -4
  523. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_keep.csv +0 -5
  524. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_keep_expected.csv +0 -4
  525. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_keep_filter.yml +0 -2
  526. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_keep_in.yml +0 -18
  527. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_keep_with_duplicated_column_names.csv +0 -5
  528. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_keep_with_duplicated_column_names.yml +0 -2
  529. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_keep_with_duplicated_column_names_expected.csv +0 -4
  530. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_keep_with_duplicated_column_names_in.yml +0 -17
  531. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_keep_with_unmatched_filter.yml +0 -3
  532. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_keep_without_unmatched_filter.yml +0 -2
  533. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_remove.csv +0 -5
  534. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_remove_expected.csv +0 -4
  535. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_remove_filter.yml +0 -2
  536. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_remove_in.yml +0 -18
  537. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_remove_with_unmatched_filter.yml +0 -3
  538. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_remove_without_unmatched_filter.yml +0 -2
  539. data/embulk-test/build.gradle +0 -6
  540. data/embulk-test/src/main/java/org/embulk/test/EmbulkTests.java +0 -75
  541. data/embulk-test/src/main/java/org/embulk/test/PreviewResultInputPlugin.java +0 -65
  542. data/embulk-test/src/main/java/org/embulk/test/TestingBulkLoader.java +0 -129
  543. data/embulk-test/src/main/java/org/embulk/test/TestingEmbulk.java +0 -710
  544. data/gradle/wrapper/gradle-wrapper.jar +0 -0
  545. data/gradle/wrapper/gradle-wrapper.properties +0 -5
  546. data/gradlew +0 -172
  547. data/gradlew.bat +0 -84
  548. data/lib/embulk/data/bundle/.bundle/config +0 -3
  549. data/lib/embulk/data/bundle/.ruby-version +0 -1
  550. data/lib/embulk/data/bundle/Gemfile +0 -31
  551. data/lib/embulk/data/bundle/embulk/filter/example.rb +0 -42
  552. data/lib/embulk/data/bundle/embulk/input/example.rb +0 -54
  553. data/lib/embulk/data/bundle/embulk/output/example.rb +0 -58
  554. data/lib/embulk/data/new/LICENSE.txt +0 -21
  555. data/lib/embulk/data/new/README.md.vm +0 -106
  556. data/lib/embulk/data/new/gitignore.vm +0 -17
  557. data/lib/embulk/data/new/java/build.gradle.vm +0 -96
  558. data/lib/embulk/data/new/java/config/checkstyle/checkstyle.xml +0 -128
  559. data/lib/embulk/data/new/java/config/checkstyle/default.xml +0 -108
  560. data/lib/embulk/data/new/java/decoder.java.vm +0 -86
  561. data/lib/embulk/data/new/java/encoder.java.vm +0 -88
  562. data/lib/embulk/data/new/java/file_input.java.vm +0 -145
  563. data/lib/embulk/data/new/java/file_output.java.vm +0 -95
  564. data/lib/embulk/data/new/java/filter.java.vm +0 -57
  565. data/lib/embulk/data/new/java/formatter.java.vm +0 -55
  566. data/lib/embulk/data/new/java/gradle/wrapper/gradle-wrapper.jar +0 -0
  567. data/lib/embulk/data/new/java/gradle/wrapper/gradle-wrapper.properties +0 -5
  568. data/lib/embulk/data/new/java/gradlew +0 -172
  569. data/lib/embulk/data/new/java/gradlew.bat +0 -84
  570. data/lib/embulk/data/new/java/input.java.vm +0 -89
  571. data/lib/embulk/data/new/java/output.java.vm +0 -79
  572. data/lib/embulk/data/new/java/parser.java.vm +0 -61
  573. data/lib/embulk/data/new/java/plugin_loader.rb.vm +0 -3
  574. data/lib/embulk/data/new/java/test.java.vm +0 -5
  575. data/lib/embulk/data/new/ruby/.ruby-version +0 -1
  576. data/lib/embulk/data/new/ruby/Gemfile +0 -2
  577. data/lib/embulk/data/new/ruby/Rakefile +0 -3
  578. data/lib/embulk/data/new/ruby/decoder_guess.rb.vm +0 -25
  579. data/lib/embulk/data/new/ruby/filter.rb.vm +0 -50
  580. data/lib/embulk/data/new/ruby/formatter.rb.vm +0 -49
  581. data/lib/embulk/data/new/ruby/gemspec.vm +0 -20
  582. data/lib/embulk/data/new/ruby/input.rb.vm +0 -59
  583. data/lib/embulk/data/new/ruby/output.rb.vm +0 -61
  584. data/lib/embulk/data/new/ruby/parser.rb.vm +0 -44
  585. data/lib/embulk/data/new/ruby/parser_guess.rb.vm +0 -65
  586. data/lib/embulk/data/package_data.rb +0 -59
  587. data/lib/embulk/runner.rb +0 -53
  588. data/settings.gradle +0 -8
  589. data/test/helper.rb +0 -23
  590. data/test/monkey_strptime/mri/date/test_date_strptime.rb +0 -515
  591. data/test/monkey_strptime/run-test.rb +0 -29
  592. data/test/vanilla/guess/test_csv_all_strings.rb +0 -43
  593. data/test/vanilla/guess/test_csv_guess.rb +0 -170
  594. data/test/vanilla/guess/test_schema_guess.rb +0 -47
  595. data/test/vanilla/guess/test_time_format_guess.rb +0 -135
  596. data/test/vanilla/run-test.rb +0 -14
  597. data/test/vanilla/time/test_timestamp_parser.rb +0 -117
@@ -1,563 +0,0 @@
1
- package org.embulk.exec;
2
-
3
- import java.util.List;
4
- import java.util.ArrayList;
5
- import java.util.concurrent.Callable;
6
- import java.util.concurrent.Future;
7
- import java.util.concurrent.ExecutorService;
8
- import java.util.concurrent.ExecutionException;
9
- import com.google.common.base.Throwables;
10
- import com.google.common.util.concurrent.ThreadFactoryBuilder;
11
- import org.slf4j.Logger;
12
- import com.google.inject.Inject;
13
- import org.embulk.config.ConfigSource;
14
- import org.embulk.config.TaskSource;
15
- import org.embulk.config.TaskReport;
16
- import org.embulk.spi.Exec;
17
- import org.embulk.spi.ExecSession;
18
- import org.embulk.spi.ExecutorPlugin;
19
- import org.embulk.spi.ProcessTask;
20
- import org.embulk.spi.ProcessState;
21
- import org.embulk.spi.Schema;
22
- import org.embulk.spi.InputPlugin;
23
- import org.embulk.spi.FilterPlugin;
24
- import org.embulk.spi.OutputPlugin;
25
- import org.embulk.spi.Page;
26
- import org.embulk.spi.PageOutput;
27
- import org.embulk.spi.AbortTransactionResource;
28
- import org.embulk.spi.CloseResource;
29
- import org.embulk.spi.TransactionalPageOutput;
30
- import org.embulk.plugin.compat.PluginWrappers;
31
- import org.embulk.spi.util.Filters;
32
- import org.embulk.spi.util.Executors;
33
- import org.embulk.spi.util.Executors.ProcessStateCallback;
34
-
35
- public class LocalExecutorPlugin
36
- implements ExecutorPlugin
37
- {
38
- private int defaultMaxThreads;
39
- private int defaultMinThreads;
40
-
41
- @Inject
42
- public LocalExecutorPlugin(@ForSystemConfig ConfigSource systemConfig)
43
- {
44
- int cores = Runtime.getRuntime().availableProcessors();
45
- this.defaultMaxThreads = systemConfig.get(Integer.class, "max_threads", cores * 2);
46
- this.defaultMinThreads = systemConfig.get(Integer.class, "min_output_tasks", cores);
47
- }
48
-
49
- @Override
50
- public void transaction(ConfigSource config, Schema outputSchema, int inputTaskCount,
51
- ExecutorPlugin.Control control)
52
- {
53
- try (AbstractLocalExecutor exec = newExecutor(config, inputTaskCount)) {
54
- control.transaction(outputSchema, exec.getOutputTaskCount(), exec);
55
- }
56
- }
57
-
58
- private AbstractLocalExecutor newExecutor(ConfigSource config, int inputTaskCount)
59
- {
60
- Logger log = Exec.getLogger(LocalExecutorPlugin.class);
61
- int maxThreads = config.get(Integer.class, "max_threads", defaultMaxThreads);
62
- int minThreads = config.get(Integer.class, "min_output_tasks", defaultMinThreads);
63
- if (inputTaskCount > 0 && inputTaskCount < minThreads) {
64
- int scatterCount = (minThreads + inputTaskCount - 1) / inputTaskCount;
65
- log.info("Using local thread executor with max_threads={} / output tasks {} = input tasks {} * {}",
66
- maxThreads, inputTaskCount * scatterCount, inputTaskCount, scatterCount);
67
- return new ScatterExecutor(maxThreads, inputTaskCount, scatterCount);
68
- }
69
- else {
70
- log.info("Using local thread executor with max_threads={} / tasks={}", maxThreads, inputTaskCount);
71
- return new DirectExecutor(maxThreads, inputTaskCount);
72
- }
73
- }
74
-
75
- private static abstract class AbstractLocalExecutor
76
- implements Executor, AutoCloseable
77
- {
78
- protected final Logger log = Exec.getLogger(LocalExecutorPlugin.class);
79
-
80
- protected final int inputTaskCount;
81
- protected final int outputTaskCount;
82
-
83
- public AbstractLocalExecutor(int inputTaskCount, int outputTaskCount)
84
- {
85
- this.inputTaskCount = inputTaskCount;
86
- this.outputTaskCount = outputTaskCount;
87
- }
88
-
89
- public int getOutputTaskCount()
90
- {
91
- return outputTaskCount;
92
- }
93
-
94
- @Override
95
- public void execute(ProcessTask task, ProcessState state)
96
- {
97
- state.initialize(inputTaskCount, outputTaskCount);
98
-
99
- List<Future<Throwable>> futures = new ArrayList<>(inputTaskCount);
100
- try {
101
- for (int i = 0; i < inputTaskCount; i++) {
102
- futures.add(startInputTask(task, state, i));
103
- }
104
- showProgress(state, inputTaskCount);
105
-
106
- for (int i = 0; i < inputTaskCount; i++) {
107
- if (futures.get(i) == null) {
108
- continue;
109
- }
110
- try {
111
- state.getInputTaskState(i).setException(futures.get(i).get());
112
- }
113
- catch (ExecutionException ex) {
114
- state.getInputTaskState(i).setException(ex.getCause());
115
- //Throwables.propagate(ex.getCause());
116
- }
117
- catch (InterruptedException ex) {
118
- state.getInputTaskState(i).setException(new ExecutionInterruptedException(ex));
119
- }
120
- showProgress(state, inputTaskCount);
121
- }
122
- }
123
- finally {
124
- for (Future<Throwable> future : futures) {
125
- if (future != null && !future.isDone()) {
126
- future.cancel(true);
127
- // TODO join?
128
- }
129
- }
130
- }
131
- }
132
-
133
- @Override
134
- public abstract void close();
135
-
136
- private void showProgress(ProcessState state, int taskCount)
137
- {
138
- int started = 0;
139
- int finished = 0;
140
- for (int i = 0; i < taskCount; i++) {
141
- if (state.getOutputTaskState(i).isStarted()) { started++; }
142
- if (state.getOutputTaskState(i).isFinished()) { finished++; }
143
- }
144
-
145
- log.info(String.format("{done:%3d / %d, running: %d}", finished, taskCount, started - finished));
146
- }
147
-
148
- protected abstract Future<Throwable> startInputTask(ProcessTask task, ProcessState state, int taskIndex);
149
- }
150
-
151
- public static class DirectExecutor
152
- extends AbstractLocalExecutor
153
- {
154
- protected final ExecutorService executor;
155
-
156
- public DirectExecutor(int maxThreads, int taskCount)
157
- {
158
- super(taskCount, taskCount);
159
- this.executor = java.util.concurrent.Executors.newFixedThreadPool(maxThreads,
160
- new ThreadFactoryBuilder()
161
- .setNameFormat("embulk-executor-%d")
162
- .setDaemon(true)
163
- .build());
164
- }
165
-
166
- @Override
167
- public void close()
168
- {
169
- executor.shutdown();
170
- }
171
-
172
- @Override
173
- protected Future<Throwable> startInputTask(final ProcessTask task, final ProcessState state, final int taskIndex)
174
- {
175
- if (state.getOutputTaskState(taskIndex).isCommitted()) {
176
- log.warn("Skipped resumed task {}", taskIndex);
177
- return null; // resumed
178
- }
179
-
180
- return executor.submit(new Callable<Throwable>() {
181
- public Throwable call()
182
- {
183
- try (SetCurrentThreadName dontCare = new SetCurrentThreadName(String.format("task-%04d", taskIndex))) {
184
- Executors.process(Exec.session(), task, taskIndex, new ProcessStateCallback() {
185
- public void started()
186
- {
187
- state.getInputTaskState(taskIndex).start();
188
- state.getOutputTaskState(taskIndex).start();
189
- }
190
-
191
- public void inputCommitted(TaskReport report)
192
- {
193
- state.getInputTaskState(taskIndex).setTaskReport(report);
194
- }
195
-
196
- public void outputCommitted(TaskReport report)
197
- {
198
- state.getOutputTaskState(taskIndex).setTaskReport(report);
199
- }
200
- });
201
- return null;
202
- }
203
- finally {
204
- state.getInputTaskState(taskIndex).finish();
205
- state.getOutputTaskState(taskIndex).finish();
206
- }
207
- }
208
- });
209
- }
210
- }
211
-
212
- public static class ScatterExecutor
213
- extends AbstractLocalExecutor
214
- {
215
- private final int scatterCount;
216
- private final int inputTaskCount;
217
- private final ExecutorService inputExecutor;
218
- private final ExecutorService outputExecutor;
219
-
220
- public ScatterExecutor(int maxThreads, int inputTaskCount, int scatterCount)
221
- {
222
- super(inputTaskCount, inputTaskCount * scatterCount);
223
- this.inputTaskCount = inputTaskCount;
224
- this.scatterCount = scatterCount;
225
- this.inputExecutor = java.util.concurrent.Executors.newFixedThreadPool(
226
- Math.max(maxThreads / scatterCount, 1),
227
- new ThreadFactoryBuilder()
228
- .setNameFormat("embulk-input-executor-%d")
229
- .setDaemon(true)
230
- .build());
231
- this.outputExecutor = java.util.concurrent.Executors.newCachedThreadPool(
232
- new ThreadFactoryBuilder()
233
- .setNameFormat("embulk-output-executor-%d")
234
- .setDaemon(true)
235
- .build());
236
- }
237
-
238
- @Override
239
- public void close()
240
- {
241
- inputExecutor.shutdown();
242
- outputExecutor.shutdown();
243
- }
244
-
245
- @Override
246
- protected Future<Throwable> startInputTask(final ProcessTask task, final ProcessState state, final int taskIndex)
247
- {
248
- if(isAllScatterOutputFinished(state, taskIndex)) {
249
- log.warn("Skipped resumed input task {}", taskIndex);
250
- return null; // resumed
251
- }
252
-
253
- return inputExecutor.submit(new Callable<Throwable>() {
254
- public Throwable call()
255
- {
256
- try (SetCurrentThreadName dontCare = new SetCurrentThreadName(String.format("task-%04d", taskIndex))) {
257
- runInputTask(Exec.session(), task, state, taskIndex);
258
- return null;
259
- }
260
- }
261
- });
262
- }
263
-
264
- private boolean isAllScatterOutputFinished(ProcessState state, int taskIndex) {
265
- for (int i = 0; i < scatterCount; i++) {
266
- int outputTaskIndex = taskIndex * scatterCount + i;
267
- if (!state.getOutputTaskState(outputTaskIndex).isCommitted()) {
268
- return false;
269
- }
270
- }
271
- return true;
272
- }
273
-
274
- private void runInputTask(ExecSession exec, ProcessTask task, ProcessState state, int taskIndex)
275
- {
276
- InputPlugin inputPlugin = exec.newPlugin(InputPlugin.class, task.getInputPluginType());
277
- List<FilterPlugin> filterPlugins = Filters.newFilterPlugins(exec, task.getFilterPluginTypes());
278
- OutputPlugin outputPlugin = exec.newPlugin(OutputPlugin.class, task.getOutputPluginType());
279
-
280
- try (ScatterTransactionalPageOutput tran = new ScatterTransactionalPageOutput(state, taskIndex, scatterCount)) {
281
- tran.openOutputs(outputPlugin, task.getOutputSchema(), task.getOutputTaskSource());
282
-
283
- try (AbortTransactionResource aborter = new AbortTransactionResource(tran)) {
284
- tran.openFilters(filterPlugins, task.getFilterSchemas(), task.getFilterTaskSources());
285
-
286
- tran.startWorkers(outputExecutor);
287
-
288
- // started
289
- state.getInputTaskState(taskIndex).start();
290
- for (int i = 0; i < scatterCount; i++) {
291
- state.getOutputTaskState(taskIndex * scatterCount + i).start();
292
- }
293
-
294
- TaskReport inputTaskReport = inputPlugin.run(task.getInputTaskSource(), task.getInputSchema(), taskIndex, tran);
295
-
296
- // inputCommitted
297
- if (inputTaskReport == null) {
298
- inputTaskReport = exec.newTaskReport();
299
- }
300
- state.getInputTaskState(taskIndex).setTaskReport(inputTaskReport);
301
-
302
- // outputCommitted
303
- tran.commit();
304
- aborter.dontAbort();
305
- }
306
- }
307
- finally {
308
- state.getInputTaskState(taskIndex).finish();
309
- state.getOutputTaskState(taskIndex).finish();
310
- }
311
- }
312
- }
313
-
314
- private static class ScatterTransactionalPageOutput
315
- implements TransactionalPageOutput
316
- {
317
- private static final Page DONE_PAGE = Page.allocate(0);
318
-
319
- private static class OutputWorker
320
- implements Callable<Throwable>
321
- {
322
- private final PageOutput output;
323
- private final Future<Throwable> future;
324
- private volatile int addWaiting;
325
- private volatile Page queued;
326
-
327
- public OutputWorker(PageOutput output, ExecutorService executor)
328
- {
329
- this.output = output;
330
- this.addWaiting = 0;
331
- this.future = executor.submit(this);
332
- }
333
-
334
- public synchronized void done()
335
- throws InterruptedException
336
- {
337
- while (true) {
338
- if (queued == null && addWaiting == 0) {
339
- queued = DONE_PAGE;
340
- notifyAll();
341
- return;
342
- }
343
- else if (queued == DONE_PAGE) {
344
- return;
345
- }
346
- wait();
347
- }
348
- }
349
-
350
- public synchronized void add(Page page)
351
- throws InterruptedException
352
- {
353
- addWaiting++;
354
- try {
355
- while (true) {
356
- if (queued == null) {
357
- queued = page;
358
- notifyAll();
359
- return;
360
- }
361
- else if (queued == DONE_PAGE) {
362
- page.release();
363
- return;
364
- }
365
- wait();
366
- }
367
- }
368
- finally {
369
- addWaiting--;
370
- }
371
- }
372
-
373
- public Throwable join()
374
- throws InterruptedException
375
- {
376
- try {
377
- return future.get();
378
- }
379
- catch (ExecutionException ex) {
380
- return ex.getCause();
381
- }
382
- }
383
-
384
- @Override
385
- public synchronized Throwable call()
386
- throws InterruptedException
387
- {
388
- try {
389
- while (true) {
390
- if (queued != null) {
391
- if (queued == DONE_PAGE) {
392
- return null;
393
- }
394
- output.add(queued);
395
- queued = null;
396
- notifyAll();
397
- }
398
- wait();
399
- }
400
- }
401
- finally {
402
- try {
403
- if (queued != null && queued != DONE_PAGE) {
404
- queued.release();
405
- queued = null;
406
- }
407
- }
408
- finally {
409
- queued = DONE_PAGE;
410
- }
411
- notifyAll();
412
- }
413
- }
414
- }
415
-
416
- private final ProcessState state;
417
- private final int taskIndex;
418
- private final int scatterCount;
419
-
420
- private final TransactionalPageOutput[] trans;
421
- private final PageOutput[] filtereds;
422
- private final CloseResource[] closeThese;
423
-
424
- private final OutputWorker[] outputWorkers;
425
-
426
- private long pageCount;
427
-
428
- public ScatterTransactionalPageOutput(ProcessState state, int taskIndex, int scatterCount)
429
- {
430
- this.state = state;
431
- this.taskIndex = taskIndex;
432
- this.scatterCount = scatterCount;
433
-
434
- this.trans = new TransactionalPageOutput[scatterCount];
435
- this.filtereds = new PageOutput[scatterCount];
436
- this.closeThese = new CloseResource[scatterCount];
437
- for (int i = 0; i < scatterCount; i++) {
438
- closeThese[i] = new CloseResource();
439
- }
440
- this.outputWorkers = new OutputWorker[scatterCount];
441
- }
442
-
443
- public void openOutputs(OutputPlugin outputPlugin, Schema outputSchema, TaskSource outputTaskSource)
444
- {
445
- for (int i = 0; i < scatterCount; i++) {
446
- int outputTaskIndex = taskIndex * scatterCount + i;
447
- if (!state.getOutputTaskState(outputTaskIndex).isCommitted()) {
448
- TransactionalPageOutput tran = PluginWrappers.transactionalPageOutput(
449
- outputPlugin.open(outputTaskSource, outputSchema, outputTaskIndex));
450
- trans[i] = tran;
451
- closeThese[i].closeThis(tran);
452
- }
453
- }
454
- }
455
-
456
- public void openFilters(List<FilterPlugin> filterPlugins, List<Schema> filterSchemas, List<TaskSource> filterTaskSources)
457
- {
458
- for (int i = 0; i < scatterCount; i++) {
459
- TransactionalPageOutput tran = trans[i];
460
- if (tran != null) {
461
- PageOutput filtered = Filters.open(filterPlugins, filterTaskSources, filterSchemas, trans[i]);
462
- filtereds[i] = filtered;
463
- closeThese[i].closeThis(filtered);
464
- }
465
- }
466
- }
467
-
468
- public void startWorkers(ExecutorService outputExecutor)
469
- {
470
- for (int i = 0; i < scatterCount; i++) {
471
- PageOutput filtered = filtereds[i];
472
- if (filtered != null) {
473
- outputWorkers[i] = new OutputWorker(filtered, outputExecutor);
474
- }
475
- }
476
- }
477
-
478
- public void add(Page page)
479
- {
480
- OutputWorker worker = outputWorkers[(int) (pageCount % scatterCount)];
481
- if (worker != null) {
482
- try {
483
- worker.add(page);
484
- }
485
- catch (InterruptedException ex) {
486
- throw Throwables.propagate(ex);
487
- }
488
- }
489
- pageCount++;
490
- }
491
-
492
- public void finish()
493
- {
494
- completeWorkers();
495
- for (int i = 0; i < scatterCount; i++) {
496
- if (filtereds[i] != null) {
497
- filtereds[i].finish();
498
- }
499
- }
500
- }
501
-
502
- public void close()
503
- {
504
- completeWorkers();
505
- for (int i = 0; i < scatterCount; i++) {
506
- closeThese[i].close();
507
- }
508
- }
509
-
510
- public void abort()
511
- {
512
- completeWorkers();
513
- for (int i = 0; i < scatterCount; i++) {
514
- if (trans[i] != null) {
515
- trans[i].abort();
516
- }
517
- }
518
- }
519
-
520
- public TaskReport commit()
521
- {
522
- completeWorkers();
523
- for (int i = 0; i < scatterCount; i++) {
524
- if (trans[i] != null) {
525
- int outputTaskIndex = taskIndex * scatterCount + i;
526
- TaskReport outputTaskReport = trans[i].commit();
527
- trans[i] = null; // don't abort
528
- if (outputTaskReport == null) {
529
- outputTaskReport = Exec.newTaskReport();
530
- }
531
- state.getOutputTaskState(outputTaskIndex).setTaskReport(outputTaskReport);
532
- }
533
- }
534
- return null;
535
- }
536
-
537
- public void completeWorkers()
538
- {
539
- for (int i = 0; i < scatterCount; i++) {
540
- OutputWorker worker = outputWorkers[i];
541
- if (worker != null) {
542
- try {
543
- worker.done();
544
- }
545
- catch (InterruptedException ex) {
546
- throw Throwables.propagate(ex);
547
- }
548
- Throwable error = null;
549
- try {
550
- error = worker.join();
551
- }
552
- catch (InterruptedException ex) {
553
- error = ex;
554
- }
555
- outputWorkers[i] = null;
556
- if (error != null) {
557
- throw Throwables.propagate(error);
558
- }
559
- }
560
- }
561
- }
562
- }
563
- }