embulk 0.8.39-java → 0.10.28-java

Sign up to get free protection for your applications and to get access to all the features.
Files changed (604) 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/gem_version.rb +3 -0
  8. data/lib/embulk/guess/charset.rb +2 -11
  9. data/lib/embulk/java/bootstrap.rb +0 -1
  10. data/lib/embulk/java_plugin.rb +9 -1
  11. data/lib/embulk/logger.rb +2 -1
  12. data/lib/embulk/page_builder.rb +2 -2
  13. data/lib/embulk/plugin.rb +2 -2
  14. data/lib/embulk/schema.rb +3 -4
  15. data/lib/embulk/version.rb +43 -19
  16. metadata +23 -762
  17. data/.gitignore +0 -15
  18. data/.ruby-version +0 -1
  19. data/.travis.yml +0 -28
  20. data/COPYING +0 -14
  21. data/Gemfile.lock +0 -30
  22. data/README.md +0 -229
  23. data/Rakefile +0 -26
  24. data/appveyor.yml +0 -28
  25. data/bin/embulk +0 -139
  26. data/build.gradle +0 -419
  27. data/embulk-cli/build.gradle +0 -9
  28. data/embulk-cli/src/main/bat/selfrun.bat +0 -107
  29. data/embulk-cli/src/main/java/org/embulk/cli/EmbulkArguments.java +0 -54
  30. data/embulk-cli/src/main/java/org/embulk/cli/EmbulkCommandLine.java +0 -227
  31. data/embulk-cli/src/main/java/org/embulk/cli/EmbulkCommandLineException.java +0 -25
  32. data/embulk-cli/src/main/java/org/embulk/cli/EmbulkExample.java +0 -86
  33. data/embulk-cli/src/main/java/org/embulk/cli/EmbulkMigrate.java +0 -480
  34. data/embulk-cli/src/main/java/org/embulk/cli/EmbulkNew.java +0 -419
  35. data/embulk-cli/src/main/java/org/embulk/cli/EmbulkRun.java +0 -786
  36. data/embulk-cli/src/main/java/org/embulk/cli/EmbulkSelfUpdate.java +0 -235
  37. data/embulk-cli/src/main/java/org/embulk/cli/EmbulkSubcommand.java +0 -47
  38. data/embulk-cli/src/main/java/org/embulk/cli/Main.java +0 -31
  39. data/embulk-cli/src/main/java/org/embulk/cli/parse/AbstractHelpLineDefinition.java +0 -15
  40. data/embulk-cli/src/main/java/org/embulk/cli/parse/CliHelpFormatterWithHelpMessages.java +0 -141
  41. data/embulk-cli/src/main/java/org/embulk/cli/parse/CliOptionsWithHelpMessages.java +0 -45
  42. data/embulk-cli/src/main/java/org/embulk/cli/parse/EmbulkCommandLineHelpRequired.java +0 -10
  43. data/embulk-cli/src/main/java/org/embulk/cli/parse/EmbulkCommandLineParseException.java +0 -25
  44. data/embulk-cli/src/main/java/org/embulk/cli/parse/EmbulkCommandLineParser.java +0 -187
  45. data/embulk-cli/src/main/java/org/embulk/cli/parse/HelpMessageAsCliOption.java +0 -36
  46. data/embulk-cli/src/main/java/org/embulk/cli/parse/HelpMessageLineDefinition.java +0 -20
  47. data/embulk-cli/src/main/java/org/embulk/cli/parse/OptionBehavior.java +0 -39
  48. data/embulk-cli/src/main/java/org/embulk/cli/parse/OptionDefinition.java +0 -120
  49. data/embulk-cli/src/main/sh/selfrun.sh +0 -60
  50. data/embulk-cli/src/test/java/org/embulk/cli/DummyMain.java +0 -23
  51. data/embulk-cli/src/test/java/org/embulk/cli/SelfrunTest.java +0 -296
  52. data/embulk-core/build.gradle +0 -83
  53. data/embulk-core/src/main/java/org/embulk/EmbulkEmbed.java +0 -321
  54. data/embulk-core/src/main/java/org/embulk/EmbulkRunner.java +0 -531
  55. data/embulk-core/src/main/java/org/embulk/EmbulkService.java +0 -78
  56. data/embulk-core/src/main/java/org/embulk/EmbulkSetup.java +0 -49
  57. data/embulk-core/src/main/java/org/embulk/EmbulkVersion.java +0 -109
  58. data/embulk-core/src/main/java/org/embulk/command/PreviewPrinter.java +0 -87
  59. data/embulk-core/src/main/java/org/embulk/command/TablePreviewPrinter.java +0 -107
  60. data/embulk-core/src/main/java/org/embulk/command/VerticalPreviewPrinter.java +0 -47
  61. data/embulk-core/src/main/java/org/embulk/config/CommitReport.java +0 -36
  62. data/embulk-core/src/main/java/org/embulk/config/Config.java +0 -15
  63. data/embulk-core/src/main/java/org/embulk/config/ConfigDefault.java +0 -15
  64. data/embulk-core/src/main/java/org/embulk/config/ConfigDiff.java +0 -32
  65. data/embulk-core/src/main/java/org/embulk/config/ConfigException.java +0 -26
  66. data/embulk-core/src/main/java/org/embulk/config/ConfigInject.java +0 -14
  67. data/embulk-core/src/main/java/org/embulk/config/ConfigLoader.java +0 -149
  68. data/embulk-core/src/main/java/org/embulk/config/ConfigSource.java +0 -34
  69. data/embulk-core/src/main/java/org/embulk/config/DataSource.java +0 -41
  70. data/embulk-core/src/main/java/org/embulk/config/DataSourceImpl.java +0 -243
  71. data/embulk-core/src/main/java/org/embulk/config/DataSourceSerDe.java +0 -84
  72. data/embulk-core/src/main/java/org/embulk/config/GenericTypeReference.java +0 -20
  73. data/embulk-core/src/main/java/org/embulk/config/ModelManager.java +0 -123
  74. data/embulk-core/src/main/java/org/embulk/config/Task.java +0 -10
  75. data/embulk-core/src/main/java/org/embulk/config/TaskInvocationHandler.java +0 -180
  76. data/embulk-core/src/main/java/org/embulk/config/TaskReport.java +0 -32
  77. data/embulk-core/src/main/java/org/embulk/config/TaskSerDe.java +0 -349
  78. data/embulk-core/src/main/java/org/embulk/config/TaskSource.java +0 -34
  79. data/embulk-core/src/main/java/org/embulk/config/TaskValidationException.java +0 -38
  80. data/embulk-core/src/main/java/org/embulk/config/TaskValidator.java +0 -24
  81. data/embulk-core/src/main/java/org/embulk/config/UserDataException.java +0 -4
  82. data/embulk-core/src/main/java/org/embulk/config/UserDataExceptions.java +0 -17
  83. data/embulk-core/src/main/java/org/embulk/config/YamlTagResolver.java +0 -53
  84. data/embulk-core/src/main/java/org/embulk/exec/BufferFileInputPlugin.java +0 -88
  85. data/embulk-core/src/main/java/org/embulk/exec/BulkLoader.java +0 -754
  86. data/embulk-core/src/main/java/org/embulk/exec/ConfigurableGuessInputPlugin.java +0 -9
  87. data/embulk-core/src/main/java/org/embulk/exec/ExecModule.java +0 -53
  88. data/embulk-core/src/main/java/org/embulk/exec/ExecutionInterruptedException.java +0 -10
  89. data/embulk-core/src/main/java/org/embulk/exec/ExecutionResult.java +0 -33
  90. data/embulk-core/src/main/java/org/embulk/exec/ExtensionServiceLoaderModule.java +0 -43
  91. data/embulk-core/src/main/java/org/embulk/exec/ForGuess.java +0 -16
  92. data/embulk-core/src/main/java/org/embulk/exec/ForSystemConfig.java +0 -16
  93. data/embulk-core/src/main/java/org/embulk/exec/GuessExecutor.java +0 -309
  94. data/embulk-core/src/main/java/org/embulk/exec/LocalExecutorPlugin.java +0 -563
  95. data/embulk-core/src/main/java/org/embulk/exec/LoggerProvider.java +0 -68
  96. data/embulk-core/src/main/java/org/embulk/exec/NoSampleException.java +0 -10
  97. data/embulk-core/src/main/java/org/embulk/exec/PartialExecutionException.java +0 -26
  98. data/embulk-core/src/main/java/org/embulk/exec/PooledBufferAllocator.java +0 -77
  99. data/embulk-core/src/main/java/org/embulk/exec/PreviewExecutor.java +0 -222
  100. data/embulk-core/src/main/java/org/embulk/exec/PreviewResult.java +0 -27
  101. data/embulk-core/src/main/java/org/embulk/exec/PreviewedNoticeError.java +0 -17
  102. data/embulk-core/src/main/java/org/embulk/exec/ResumeState.java +0 -100
  103. data/embulk-core/src/main/java/org/embulk/exec/SamplingParserPlugin.java +0 -215
  104. data/embulk-core/src/main/java/org/embulk/exec/SetCurrentThreadName.java +0 -22
  105. data/embulk-core/src/main/java/org/embulk/exec/SkipTransactionException.java +0 -23
  106. data/embulk-core/src/main/java/org/embulk/exec/SystemConfigModule.java +0 -24
  107. data/embulk-core/src/main/java/org/embulk/exec/TempFileAllocator.java +0 -35
  108. data/embulk-core/src/main/java/org/embulk/exec/TransactionStage.java +0 -27
  109. data/embulk-core/src/main/java/org/embulk/jruby/JRubyPluginSource.java +0 -76
  110. data/embulk-core/src/main/java/org/embulk/jruby/JRubyScriptingModule.java +0 -395
  111. data/embulk-core/src/main/java/org/embulk/plugin/BuiltinPluginSourceModule.java +0 -17
  112. data/embulk-core/src/main/java/org/embulk/plugin/DefaultPluginType.java +0 -50
  113. data/embulk-core/src/main/java/org/embulk/plugin/InjectedPluginSource.java +0 -100
  114. data/embulk-core/src/main/java/org/embulk/plugin/MavenPluginType.java +0 -112
  115. data/embulk-core/src/main/java/org/embulk/plugin/PluginClassLoader.java +0 -993
  116. data/embulk-core/src/main/java/org/embulk/plugin/PluginClassLoaderFactory.java +0 -16
  117. data/embulk-core/src/main/java/org/embulk/plugin/PluginClassLoaderModule.java +0 -102
  118. data/embulk-core/src/main/java/org/embulk/plugin/PluginManager.java +0 -78
  119. data/embulk-core/src/main/java/org/embulk/plugin/PluginSource.java +0 -49
  120. data/embulk-core/src/main/java/org/embulk/plugin/PluginSourceNotMatchException.java +0 -25
  121. data/embulk-core/src/main/java/org/embulk/plugin/PluginType.java +0 -122
  122. data/embulk-core/src/main/java/org/embulk/plugin/compat/InputPluginWrapper.java +0 -102
  123. data/embulk-core/src/main/java/org/embulk/plugin/compat/PluginWrappers.java +0 -30
  124. data/embulk-core/src/main/java/org/embulk/plugin/compat/TransactionalFileInputWrapper.java +0 -96
  125. data/embulk-core/src/main/java/org/embulk/plugin/compat/TransactionalFileOutputWrapper.java +0 -102
  126. data/embulk-core/src/main/java/org/embulk/plugin/compat/TransactionalPageOutputWrapper.java +0 -95
  127. data/embulk-core/src/main/java/org/embulk/plugin/jar/InvalidJarPluginException.java +0 -14
  128. data/embulk-core/src/main/java/org/embulk/plugin/jar/JarPluginLoader.java +0 -232
  129. data/embulk-core/src/main/java/org/embulk/plugin/maven/MavenArtifactFinder.java +0 -134
  130. data/embulk-core/src/main/java/org/embulk/plugin/maven/MavenArtifactNotFoundException.java +0 -20
  131. data/embulk-core/src/main/java/org/embulk/plugin/maven/MavenPluginSource.java +0 -187
  132. data/embulk-core/src/main/java/org/embulk/plugin/maven/MavenPluginSourceModule.java +0 -22
  133. data/embulk-core/src/main/java/org/embulk/plugin/maven/MavenRepositoryNotFoundException.java +0 -31
  134. data/embulk-core/src/main/java/org/embulk/spi/AbortTransactionResource.java +0 -36
  135. data/embulk-core/src/main/java/org/embulk/spi/Buffer.java +0 -148
  136. data/embulk-core/src/main/java/org/embulk/spi/BufferAllocator.java +0 -8
  137. data/embulk-core/src/main/java/org/embulk/spi/CloseResource.java +0 -42
  138. data/embulk-core/src/main/java/org/embulk/spi/Column.java +0 -95
  139. data/embulk-core/src/main/java/org/embulk/spi/ColumnConfig.java +0 -112
  140. data/embulk-core/src/main/java/org/embulk/spi/ColumnVisitor.java +0 -16
  141. data/embulk-core/src/main/java/org/embulk/spi/DataException.java +0 -23
  142. data/embulk-core/src/main/java/org/embulk/spi/DecoderPlugin.java +0 -16
  143. data/embulk-core/src/main/java/org/embulk/spi/EncoderPlugin.java +0 -16
  144. data/embulk-core/src/main/java/org/embulk/spi/Exec.java +0 -113
  145. data/embulk-core/src/main/java/org/embulk/spi/ExecAction.java +0 -6
  146. data/embulk-core/src/main/java/org/embulk/spi/ExecSession.java +0 -220
  147. data/embulk-core/src/main/java/org/embulk/spi/ExecutorPlugin.java +0 -19
  148. data/embulk-core/src/main/java/org/embulk/spi/Extension.java +0 -44
  149. data/embulk-core/src/main/java/org/embulk/spi/FileInput.java +0 -11
  150. data/embulk-core/src/main/java/org/embulk/spi/FileInputPlugin.java +0 -30
  151. data/embulk-core/src/main/java/org/embulk/spi/FileInputRunner.java +0 -169
  152. data/embulk-core/src/main/java/org/embulk/spi/FileOutput.java +0 -13
  153. data/embulk-core/src/main/java/org/embulk/spi/FileOutputPlugin.java +0 -28
  154. data/embulk-core/src/main/java/org/embulk/spi/FileOutputRunner.java +0 -199
  155. data/embulk-core/src/main/java/org/embulk/spi/FilterPlugin.java +0 -18
  156. data/embulk-core/src/main/java/org/embulk/spi/FormatterPlugin.java +0 -18
  157. data/embulk-core/src/main/java/org/embulk/spi/GuessPlugin.java +0 -9
  158. data/embulk-core/src/main/java/org/embulk/spi/InputPlugin.java +0 -33
  159. data/embulk-core/src/main/java/org/embulk/spi/OutputPlugin.java +0 -29
  160. data/embulk-core/src/main/java/org/embulk/spi/Page.java +0 -86
  161. data/embulk-core/src/main/java/org/embulk/spi/PageBuilder.java +0 -696
  162. data/embulk-core/src/main/java/org/embulk/spi/PageFormat.java +0 -47
  163. data/embulk-core/src/main/java/org/embulk/spi/PageOutput.java +0 -11
  164. data/embulk-core/src/main/java/org/embulk/spi/PageReader.java +0 -248
  165. data/embulk-core/src/main/java/org/embulk/spi/ParserPlugin.java +0 -17
  166. data/embulk-core/src/main/java/org/embulk/spi/ProcessState.java +0 -10
  167. data/embulk-core/src/main/java/org/embulk/spi/ProcessTask.java +0 -117
  168. data/embulk-core/src/main/java/org/embulk/spi/Schema.java +0 -139
  169. data/embulk-core/src/main/java/org/embulk/spi/SchemaConfig.java +0 -93
  170. data/embulk-core/src/main/java/org/embulk/spi/SchemaConfigException.java +0 -22
  171. data/embulk-core/src/main/java/org/embulk/spi/TaskState.java +0 -81
  172. data/embulk-core/src/main/java/org/embulk/spi/TempFileException.java +0 -19
  173. data/embulk-core/src/main/java/org/embulk/spi/TempFileSpace.java +0 -88
  174. data/embulk-core/src/main/java/org/embulk/spi/Transactional.java +0 -10
  175. data/embulk-core/src/main/java/org/embulk/spi/TransactionalFileInput.java +0 -17
  176. data/embulk-core/src/main/java/org/embulk/spi/TransactionalFileOutput.java +0 -19
  177. data/embulk-core/src/main/java/org/embulk/spi/TransactionalPageOutput.java +0 -17
  178. data/embulk-core/src/main/java/org/embulk/spi/json/JsonParseException.java +0 -17
  179. data/embulk-core/src/main/java/org/embulk/spi/json/JsonParser.java +0 -233
  180. data/embulk-core/src/main/java/org/embulk/spi/json/RubyValueApi.java +0 -100
  181. data/embulk-core/src/main/java/org/embulk/spi/time/DateTimeZoneSerDe.java +0 -55
  182. data/embulk-core/src/main/java/org/embulk/spi/time/Timestamp.java +0 -180
  183. data/embulk-core/src/main/java/org/embulk/spi/time/TimestampFormat.java +0 -158
  184. data/embulk-core/src/main/java/org/embulk/spi/time/TimestampFormatter.java +0 -125
  185. data/embulk-core/src/main/java/org/embulk/spi/time/TimestampParseException.java +0 -12
  186. data/embulk-core/src/main/java/org/embulk/spi/time/TimestampParser.java +0 -310
  187. data/embulk-core/src/main/java/org/embulk/spi/time/TimestampSerDe.java +0 -49
  188. data/embulk-core/src/main/java/org/embulk/spi/type/AbstractType.java +0 -58
  189. data/embulk-core/src/main/java/org/embulk/spi/type/BooleanType.java +0 -12
  190. data/embulk-core/src/main/java/org/embulk/spi/type/DoubleType.java +0 -12
  191. data/embulk-core/src/main/java/org/embulk/spi/type/JsonType.java +0 -14
  192. data/embulk-core/src/main/java/org/embulk/spi/type/LongType.java +0 -12
  193. data/embulk-core/src/main/java/org/embulk/spi/type/StringType.java +0 -12
  194. data/embulk-core/src/main/java/org/embulk/spi/type/TimestampType.java +0 -41
  195. data/embulk-core/src/main/java/org/embulk/spi/type/Type.java +0 -15
  196. data/embulk-core/src/main/java/org/embulk/spi/type/TypeDeserializer.java +0 -45
  197. data/embulk-core/src/main/java/org/embulk/spi/type/Types.java +0 -16
  198. data/embulk-core/src/main/java/org/embulk/spi/unit/ByteSize.java +0 -156
  199. data/embulk-core/src/main/java/org/embulk/spi/unit/LocalFile.java +0 -106
  200. data/embulk-core/src/main/java/org/embulk/spi/unit/LocalFileSerDe.java +0 -113
  201. data/embulk-core/src/main/java/org/embulk/spi/unit/ToString.java +0 -54
  202. data/embulk-core/src/main/java/org/embulk/spi/unit/ToStringMap.java +0 -34
  203. data/embulk-core/src/main/java/org/embulk/spi/util/CharsetSerDe.java +0 -55
  204. data/embulk-core/src/main/java/org/embulk/spi/util/Decoders.java +0 -81
  205. data/embulk-core/src/main/java/org/embulk/spi/util/DynamicColumnNotFoundException.java +0 -10
  206. data/embulk-core/src/main/java/org/embulk/spi/util/DynamicColumnSetter.java +0 -21
  207. data/embulk-core/src/main/java/org/embulk/spi/util/DynamicColumnSetterFactory.java +0 -134
  208. data/embulk-core/src/main/java/org/embulk/spi/util/DynamicPageBuilder.java +0 -200
  209. data/embulk-core/src/main/java/org/embulk/spi/util/Encoders.java +0 -81
  210. data/embulk-core/src/main/java/org/embulk/spi/util/Executors.java +0 -93
  211. data/embulk-core/src/main/java/org/embulk/spi/util/FileInputInputStream.java +0 -111
  212. data/embulk-core/src/main/java/org/embulk/spi/util/FileOutputOutputStream.java +0 -119
  213. data/embulk-core/src/main/java/org/embulk/spi/util/Filters.java +0 -100
  214. data/embulk-core/src/main/java/org/embulk/spi/util/InputStreamFileInput.java +0 -189
  215. data/embulk-core/src/main/java/org/embulk/spi/util/InputStreamTransactionalFileInput.java +0 -25
  216. data/embulk-core/src/main/java/org/embulk/spi/util/Inputs.java +0 -65
  217. data/embulk-core/src/main/java/org/embulk/spi/util/LineDecoder.java +0 -157
  218. data/embulk-core/src/main/java/org/embulk/spi/util/LineEncoder.java +0 -123
  219. data/embulk-core/src/main/java/org/embulk/spi/util/ListFileInput.java +0 -52
  220. data/embulk-core/src/main/java/org/embulk/spi/util/Newline.java +0 -38
  221. data/embulk-core/src/main/java/org/embulk/spi/util/OutputStreamFileOutput.java +0 -88
  222. data/embulk-core/src/main/java/org/embulk/spi/util/PagePrinter.java +0 -126
  223. data/embulk-core/src/main/java/org/embulk/spi/util/Pages.java +0 -149
  224. data/embulk-core/src/main/java/org/embulk/spi/util/ResumableInputStream.java +0 -168
  225. data/embulk-core/src/main/java/org/embulk/spi/util/RetryExecutor.java +0 -130
  226. data/embulk-core/src/main/java/org/embulk/spi/util/Timestamps.java +0 -53
  227. data/embulk-core/src/main/java/org/embulk/spi/util/dynamic/AbstractDynamicColumnSetter.java +0 -94
  228. data/embulk-core/src/main/java/org/embulk/spi/util/dynamic/BooleanColumnSetter.java +0 -71
  229. data/embulk-core/src/main/java/org/embulk/spi/util/dynamic/DefaultValueSetter.java +0 -20
  230. data/embulk-core/src/main/java/org/embulk/spi/util/dynamic/DoubleColumnSetter.java +0 -68
  231. data/embulk-core/src/main/java/org/embulk/spi/util/dynamic/JsonColumnSetter.java +0 -64
  232. data/embulk-core/src/main/java/org/embulk/spi/util/dynamic/LongColumnSetter.java +0 -78
  233. data/embulk-core/src/main/java/org/embulk/spi/util/dynamic/NullDefaultValueSetter.java +0 -39
  234. data/embulk-core/src/main/java/org/embulk/spi/util/dynamic/SkipColumnSetter.java +0 -68
  235. data/embulk-core/src/main/java/org/embulk/spi/util/dynamic/StringColumnSetter.java +0 -63
  236. data/embulk-core/src/main/java/org/embulk/spi/util/dynamic/TimestampColumnSetter.java +0 -72
  237. data/embulk-core/src/main/resources/embulk/logback-color.xml +0 -72
  238. data/embulk-core/src/main/resources/embulk/logback-console.xml +0 -14
  239. data/embulk-core/src/main/resources/embulk/logback-file.xml +0 -23
  240. data/embulk-core/src/main/resources/embulk/parent_first_packages.properties +0 -73
  241. data/embulk-core/src/main/resources/embulk/parent_first_resources.properties +0 -29
  242. data/embulk-core/src/test/java/org/embulk/EmbulkTestRuntime.java +0 -122
  243. data/embulk-core/src/test/java/org/embulk/GuiceBinder.java +0 -72
  244. data/embulk-core/src/test/java/org/embulk/RandomManager.java +0 -53
  245. data/embulk-core/src/test/java/org/embulk/TestPluginSourceModule.java +0 -23
  246. data/embulk-core/src/test/java/org/embulk/TestUtilityModule.java +0 -17
  247. data/embulk-core/src/test/java/org/embulk/config/TestConfigLoader.java +0 -66
  248. data/embulk-core/src/test/java/org/embulk/config/TestConfigSource.java +0 -114
  249. data/embulk-core/src/test/java/org/embulk/config/TestTaskSource.java +0 -70
  250. data/embulk-core/src/test/java/org/embulk/plugin/MockPluginSource.java +0 -58
  251. data/embulk-core/src/test/java/org/embulk/plugin/TestPluginType.java +0 -83
  252. data/embulk-core/src/test/java/org/embulk/plugin/TestPluginTypeSerDe.java +0 -67
  253. data/embulk-core/src/test/java/org/embulk/plugin/jar/ExampleJarSpiV0.java +0 -9
  254. data/embulk-core/src/test/java/org/embulk/plugin/jar/JarBuilder.java +0 -101
  255. data/embulk-core/src/test/java/org/embulk/plugin/jar/TestJarPluginLoader.java +0 -60
  256. data/embulk-core/src/test/java/org/embulk/plugin/maven/TestMavenArtifactFinder.java +0 -41
  257. data/embulk-core/src/test/java/org/embulk/spi/MockFileOutput.java +0 -63
  258. data/embulk-core/src/test/java/org/embulk/spi/MockFormatterPlugin.java +0 -108
  259. data/embulk-core/src/test/java/org/embulk/spi/MockParserPlugin.java +0 -80
  260. data/embulk-core/src/test/java/org/embulk/spi/PageTestUtils.java +0 -59
  261. data/embulk-core/src/test/java/org/embulk/spi/TestBuffer.java +0 -24
  262. data/embulk-core/src/test/java/org/embulk/spi/TestFileInputInputStream.java +0 -89
  263. data/embulk-core/src/test/java/org/embulk/spi/TestFileInputRunner.java +0 -199
  264. data/embulk-core/src/test/java/org/embulk/spi/TestFileOutputRunner.java +0 -221
  265. data/embulk-core/src/test/java/org/embulk/spi/TestInputStreamFileInput.java +0 -188
  266. data/embulk-core/src/test/java/org/embulk/spi/TestPageBuilderReader.java +0 -411
  267. data/embulk-core/src/test/java/org/embulk/spi/json/TestJsonParser.java +0 -102
  268. data/embulk-core/src/test/java/org/embulk/spi/time/TestTimestamp.java +0 -116
  269. data/embulk-core/src/test/java/org/embulk/spi/time/TestTimestampFormatterParser.java +0 -75
  270. data/embulk-core/src/test/java/org/embulk/spi/time/TestTimestampFormatterParserDeprecated.java +0 -67
  271. data/embulk-core/src/test/java/org/embulk/spi/time/TestTimestampParser.java +0 -247
  272. data/embulk-core/src/test/java/org/embulk/spi/type/TestTypeSerDe.java +0 -45
  273. data/embulk-core/src/test/java/org/embulk/spi/unit/TestByteSize.java +0 -79
  274. data/embulk-core/src/test/java/org/embulk/spi/util/TestLineDecoder.java +0 -237
  275. data/embulk-core/src/test/java/org/embulk/spi/util/TestLineEncoder.java +0 -123
  276. data/embulk-core/src/test/resources/m2.test/.gitignore +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.jar +0 -0
  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.jar.sha1 +0 -1
  279. 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
  280. 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
  281. data/embulk-docs/Makefile +0 -178
  282. data/embulk-docs/build.gradle +0 -41
  283. data/embulk-docs/make.bat +0 -243
  284. data/embulk-docs/push-gh-pages.sh +0 -49
  285. data/embulk-docs/src/_static/embulk-architecture.png +0 -0
  286. data/embulk-docs/src/_static/embulk-logo-v2/embulk-logo-v2-oneline-tr.png +0 -0
  287. data/embulk-docs/src/_static/embulk-logo-v2/embulk-logo-v2-oneline-wt.png +0 -0
  288. data/embulk-docs/src/_static/embulk-logo-v2/embulk-logo-v2-oneline.ai +0 -396
  289. data/embulk-docs/src/_static/embulk-logo-v2/embulk-logo-v2-sq-tr-small.png +0 -0
  290. data/embulk-docs/src/_static/embulk-logo-v2/embulk-logo-v2-sq-tr.png +0 -0
  291. data/embulk-docs/src/_static/embulk-logo-v2/embulk-logo-v2-sq-wt.png +0 -0
  292. data/embulk-docs/src/_static/embulk-logo-v2/embulk-logo-v2-sq.ai +0 -417
  293. data/embulk-docs/src/_static/embulk-logo-v2/embulk-logo-v2-sq.svg +0 -1
  294. data/embulk-docs/src/_static/embulk-logo-v2/embulk-logo-v2-symbol-tr.png +0 -0
  295. data/embulk-docs/src/_static/embulk-logo-v2/embulk-logo-v2-symbol-wt.png +0 -0
  296. data/embulk-docs/src/_static/embulk-logo-v2/embulk-logo-v2-symbol.ai +1 -394
  297. data/embulk-docs/src/_static/embulk-logo.svg +0 -133
  298. data/embulk-docs/src/built-in.rst +0 -1017
  299. data/embulk-docs/src/conf.py +0 -260
  300. data/embulk-docs/src/customization.rst +0 -184
  301. data/embulk-docs/src/developers/index.rst +0 -45
  302. data/embulk-docs/src/index.rst +0 -102
  303. data/embulk-docs/src/logo.rst +0 -27
  304. data/embulk-docs/src/recipe.rst +0 -8
  305. data/embulk-docs/src/recipe/scheduled-csv-load-to-elasticsearch-kibana5.rst +0 -163
  306. data/embulk-docs/src/release.rst +0 -109
  307. data/embulk-docs/src/release/release-0.1.0.rst +0 -8
  308. data/embulk-docs/src/release/release-0.2.0.rst +0 -16
  309. data/embulk-docs/src/release/release-0.2.1.rst +0 -19
  310. data/embulk-docs/src/release/release-0.3.0.rst +0 -34
  311. data/embulk-docs/src/release/release-0.3.1.rst +0 -11
  312. data/embulk-docs/src/release/release-0.3.2.rst +0 -15
  313. data/embulk-docs/src/release/release-0.4.0.rst +0 -74
  314. data/embulk-docs/src/release/release-0.4.1.rst +0 -18
  315. data/embulk-docs/src/release/release-0.4.10.rst +0 -17
  316. data/embulk-docs/src/release/release-0.4.2.rst +0 -18
  317. data/embulk-docs/src/release/release-0.4.3.rst +0 -34
  318. data/embulk-docs/src/release/release-0.4.4.rst +0 -39
  319. data/embulk-docs/src/release/release-0.4.5.rst +0 -24
  320. data/embulk-docs/src/release/release-0.4.6.rst +0 -30
  321. data/embulk-docs/src/release/release-0.4.7.rst +0 -16
  322. data/embulk-docs/src/release/release-0.4.8.rst +0 -15
  323. data/embulk-docs/src/release/release-0.4.9.rst +0 -23
  324. data/embulk-docs/src/release/release-0.5.0.rst +0 -89
  325. data/embulk-docs/src/release/release-0.5.1.rst +0 -13
  326. data/embulk-docs/src/release/release-0.5.2.rst +0 -30
  327. data/embulk-docs/src/release/release-0.5.3.rst +0 -22
  328. data/embulk-docs/src/release/release-0.5.4.rst +0 -24
  329. data/embulk-docs/src/release/release-0.5.5.rst +0 -18
  330. data/embulk-docs/src/release/release-0.6.0.rst +0 -34
  331. data/embulk-docs/src/release/release-0.6.1.rst +0 -11
  332. data/embulk-docs/src/release/release-0.6.10.rst +0 -15
  333. data/embulk-docs/src/release/release-0.6.11.rst +0 -19
  334. data/embulk-docs/src/release/release-0.6.12.rst +0 -31
  335. data/embulk-docs/src/release/release-0.6.13.rst +0 -23
  336. data/embulk-docs/src/release/release-0.6.14.rst +0 -47
  337. data/embulk-docs/src/release/release-0.6.15.rst +0 -26
  338. data/embulk-docs/src/release/release-0.6.16.rst +0 -26
  339. data/embulk-docs/src/release/release-0.6.17.rst +0 -39
  340. data/embulk-docs/src/release/release-0.6.18.rst +0 -14
  341. data/embulk-docs/src/release/release-0.6.19.rst +0 -18
  342. data/embulk-docs/src/release/release-0.6.2.rst +0 -17
  343. data/embulk-docs/src/release/release-0.6.20.rst +0 -19
  344. data/embulk-docs/src/release/release-0.6.21.rst +0 -20
  345. data/embulk-docs/src/release/release-0.6.22.rst +0 -26
  346. data/embulk-docs/src/release/release-0.6.23.rst +0 -17
  347. data/embulk-docs/src/release/release-0.6.24.rst +0 -13
  348. data/embulk-docs/src/release/release-0.6.25.rst +0 -12
  349. data/embulk-docs/src/release/release-0.6.26.rst +0 -17
  350. data/embulk-docs/src/release/release-0.6.27.rst +0 -11
  351. data/embulk-docs/src/release/release-0.6.3.rst +0 -23
  352. data/embulk-docs/src/release/release-0.6.4.rst +0 -13
  353. data/embulk-docs/src/release/release-0.6.5.rst +0 -17
  354. data/embulk-docs/src/release/release-0.6.6.rst +0 -17
  355. data/embulk-docs/src/release/release-0.6.7.rst +0 -17
  356. data/embulk-docs/src/release/release-0.6.8.rst +0 -24
  357. data/embulk-docs/src/release/release-0.6.9.rst +0 -24
  358. data/embulk-docs/src/release/release-0.7.0.rst +0 -96
  359. data/embulk-docs/src/release/release-0.7.1.rst +0 -22
  360. data/embulk-docs/src/release/release-0.7.10.rst +0 -13
  361. data/embulk-docs/src/release/release-0.7.11.rst +0 -12
  362. data/embulk-docs/src/release/release-0.7.2.rst +0 -25
  363. data/embulk-docs/src/release/release-0.7.3.rst +0 -21
  364. data/embulk-docs/src/release/release-0.7.4.rst +0 -14
  365. data/embulk-docs/src/release/release-0.7.5.rst +0 -22
  366. data/embulk-docs/src/release/release-0.7.6.rst +0 -18
  367. data/embulk-docs/src/release/release-0.7.7.rst +0 -13
  368. data/embulk-docs/src/release/release-0.7.8.rst +0 -14
  369. data/embulk-docs/src/release/release-0.7.9.rst +0 -14
  370. data/embulk-docs/src/release/release-0.8.0.rst +0 -74
  371. data/embulk-docs/src/release/release-0.8.1.rst +0 -18
  372. data/embulk-docs/src/release/release-0.8.10.rst +0 -35
  373. data/embulk-docs/src/release/release-0.8.11.rst +0 -12
  374. data/embulk-docs/src/release/release-0.8.12.rst +0 -12
  375. data/embulk-docs/src/release/release-0.8.13.rst +0 -12
  376. data/embulk-docs/src/release/release-0.8.14.rst +0 -31
  377. data/embulk-docs/src/release/release-0.8.15.rst +0 -17
  378. data/embulk-docs/src/release/release-0.8.16.rst +0 -43
  379. data/embulk-docs/src/release/release-0.8.17.rst +0 -11
  380. data/embulk-docs/src/release/release-0.8.18.rst +0 -27
  381. data/embulk-docs/src/release/release-0.8.19.rst +0 -43
  382. data/embulk-docs/src/release/release-0.8.2.rst +0 -19
  383. data/embulk-docs/src/release/release-0.8.20.rst +0 -11
  384. data/embulk-docs/src/release/release-0.8.21.rst +0 -17
  385. data/embulk-docs/src/release/release-0.8.22.rst +0 -15
  386. data/embulk-docs/src/release/release-0.8.23.rst +0 -14
  387. data/embulk-docs/src/release/release-0.8.24.rst +0 -15
  388. data/embulk-docs/src/release/release-0.8.25.rst +0 -14
  389. data/embulk-docs/src/release/release-0.8.26.rst +0 -16
  390. data/embulk-docs/src/release/release-0.8.27.rst +0 -15
  391. data/embulk-docs/src/release/release-0.8.28.rst +0 -14
  392. data/embulk-docs/src/release/release-0.8.29.rst +0 -14
  393. data/embulk-docs/src/release/release-0.8.3.rst +0 -15
  394. data/embulk-docs/src/release/release-0.8.30.rst +0 -14
  395. data/embulk-docs/src/release/release-0.8.31.rst +0 -12
  396. data/embulk-docs/src/release/release-0.8.32.rst +0 -14
  397. data/embulk-docs/src/release/release-0.8.33.rst +0 -13
  398. data/embulk-docs/src/release/release-0.8.34.rst +0 -12
  399. data/embulk-docs/src/release/release-0.8.35.rst +0 -12
  400. data/embulk-docs/src/release/release-0.8.36.rst +0 -32
  401. data/embulk-docs/src/release/release-0.8.37.rst +0 -20
  402. data/embulk-docs/src/release/release-0.8.38.rst +0 -12
  403. data/embulk-docs/src/release/release-0.8.39.rst +0 -12
  404. data/embulk-docs/src/release/release-0.8.4.rst +0 -18
  405. data/embulk-docs/src/release/release-0.8.5.rst +0 -11
  406. data/embulk-docs/src/release/release-0.8.6.rst +0 -14
  407. data/embulk-docs/src/release/release-0.8.7.rst +0 -18
  408. data/embulk-docs/src/release/release-0.8.8.rst +0 -18
  409. data/embulk-docs/src/release/release-0.8.9.rst +0 -14
  410. data/embulk-jruby-strptime/build.gradle +0 -3
  411. data/embulk-jruby-strptime/src/main/java/org/embulk/spi/time/RubyDateParser.java +0 -121
  412. data/embulk-jruby-strptime/src/main/java/org/embulk/spi/time/StrptimeFormat.java +0 -53
  413. data/embulk-jruby-strptime/src/main/java/org/embulk/spi/time/StrptimeParser.java +0 -884
  414. data/embulk-jruby-strptime/src/main/java/org/embulk/spi/time/StrptimeToken.java +0 -111
  415. data/embulk-jruby-strptime/src/main/java/org/embulk/spi/time/TimeZoneConverter.java +0 -466
  416. data/embulk-jruby-strptime/src/main/java/org/embulk/spi/time/lexer/StrptimeLexer.flex +0 -62
  417. data/embulk-jruby-strptime/src/main/java/org/embulk/spi/time/lexer/StrptimeLexer.java +0 -577
  418. data/embulk-standards/build.gradle +0 -7
  419. data/embulk-standards/src/main/java/org/embulk/standards/Bzip2FileDecoderPlugin.java +0 -55
  420. data/embulk-standards/src/main/java/org/embulk/standards/Bzip2FileEncoderPlugin.java +0 -67
  421. data/embulk-standards/src/main/java/org/embulk/standards/ConfigInputPlugin.java +0 -170
  422. data/embulk-standards/src/main/java/org/embulk/standards/CsvFormatterPlugin.java +0 -295
  423. data/embulk-standards/src/main/java/org/embulk/standards/CsvParserPlugin.java +0 -416
  424. data/embulk-standards/src/main/java/org/embulk/standards/CsvTokenizer.java +0 -545
  425. data/embulk-standards/src/main/java/org/embulk/standards/GzipFileDecoderPlugin.java +0 -55
  426. data/embulk-standards/src/main/java/org/embulk/standards/GzipFileEncoderPlugin.java +0 -71
  427. data/embulk-standards/src/main/java/org/embulk/standards/JsonParserPlugin.java +0 -235
  428. data/embulk-standards/src/main/java/org/embulk/standards/LocalFileInputPlugin.java +0 -232
  429. data/embulk-standards/src/main/java/org/embulk/standards/LocalFileOutputPlugin.java +0 -148
  430. data/embulk-standards/src/main/java/org/embulk/standards/NullOutputPlugin.java +0 -59
  431. data/embulk-standards/src/main/java/org/embulk/standards/RemoveColumnsFilterPlugin.java +0 -268
  432. data/embulk-standards/src/main/java/org/embulk/standards/RenameFilterPlugin.java +0 -479
  433. data/embulk-standards/src/main/java/org/embulk/standards/StandardPluginExtension.java +0 -16
  434. data/embulk-standards/src/main/java/org/embulk/standards/StandardPluginModule.java +0 -60
  435. data/embulk-standards/src/main/java/org/embulk/standards/StdoutOutputPlugin.java +0 -91
  436. data/embulk-standards/src/main/resources/META-INF/services/org.embulk.spi.Extension +0 -1
  437. data/embulk-standards/src/test/java/org/embulk/standards/TestCsvFormatterPlugin.java +0 -312
  438. data/embulk-standards/src/test/java/org/embulk/standards/TestCsvParserPlugin.java +0 -75
  439. data/embulk-standards/src/test/java/org/embulk/standards/TestCsvTokenizer.java +0 -457
  440. data/embulk-standards/src/test/java/org/embulk/standards/TestJsonParserPlugin.java +0 -351
  441. data/embulk-standards/src/test/java/org/embulk/standards/TestRemoveColumnsFilterPlugin.java +0 -121
  442. data/embulk-standards/src/test/java/org/embulk/standards/TestRenameFilterPlugin.java +0 -1020
  443. data/embulk-standards/src/test/java/org/embulk/standards/guess/TestCsvAllStringsGuessPlugin.java +0 -38
  444. data/embulk-standards/src/test/java/org/embulk/standards/guess/TestCsvGuessPlugin.java +0 -248
  445. data/embulk-standards/src/test/java/org/embulk/standards/preview/TestFilePreview.java +0 -73
  446. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_int_single_column_row.csv +0 -1
  447. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_int_single_column_row_and_header.csv +0 -2
  448. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_int_single_column_row_and_header_guessed.yml +0 -12
  449. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_int_single_column_row_and_header_seed.yml +0 -1
  450. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_int_single_column_row_guessed.yml +0 -12
  451. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_int_single_column_row_seed.yml +0 -1
  452. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows.csv +0 -1
  453. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_and_header.csv +0 -2
  454. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_and_header_guessed.yml +0 -16
  455. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_and_header_seed.yml +0 -1
  456. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_and_header_with_trim_needed.csv +0 -2
  457. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_and_header_with_trim_needed_guessed.yml +0 -16
  458. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_and_header_with_trim_needed_seed.yml +0 -1
  459. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_guessed.yml +0 -16
  460. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_seed.yml +0 -1
  461. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_with_trim_needed.csv +0 -1
  462. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_with_trim_needed_guessed.yml +0 -16
  463. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_with_trim_needed_seed.yml +0 -1
  464. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_string_single_column_row.csv +0 -1
  465. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_string_single_column_row_and_header.csv +0 -2
  466. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_string_single_column_row_and_header_guessed.yml +0 -12
  467. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_string_single_column_row_and_header_seed.yml +0 -1
  468. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_string_single_column_row_guessed.yml +0 -12
  469. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_string_single_column_row_seed.yml +0 -1
  470. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_int_single_column_rows.csv +0 -2
  471. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_int_single_column_rows_guessed.yml +0 -12
  472. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_int_single_column_rows_seed.yml +0 -1
  473. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_rows.csv +0 -2
  474. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_rows_and_header.csv +0 -3
  475. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_rows_and_header_guessed.yml +0 -16
  476. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_rows_and_header_seed.yml +0 -1
  477. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_rows_guessed.yml +0 -16
  478. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_rows_seed.yml +0 -1
  479. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_string_single_column_rows.csv +0 -2
  480. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_string_single_column_rows_guessed.yml +0 -12
  481. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_string_single_column_rows_seed.yml +0 -1
  482. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_backslash_escape.csv +0 -5
  483. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_backslash_escape_guessed.yml +0 -17
  484. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_backslash_escape_seed.yml +0 -1
  485. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_double_single_column.csv +0 -12
  486. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_double_single_column_guessed.yml +0 -12
  487. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_double_single_column_seed.yml +0 -1
  488. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_int_single_column.csv +0 -4
  489. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_int_single_column_guessed.yml +0 -12
  490. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_int_single_column_seed.yml +0 -1
  491. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_int_single_column_with_header.csv +0 -5
  492. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_int_single_column_with_header_guessed.yml +0 -12
  493. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_int_single_column_with_header_seed.yml +0 -1
  494. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_semicolon_delimiter.csv +0 -5
  495. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_semicolon_delimiter_guessed.yml +0 -17
  496. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_semicolon_delimiter_seed.yml +0 -1
  497. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_simple.csv +0 -5
  498. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_simple_guessed.yml +0 -17
  499. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_simple_seed.yml +0 -1
  500. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_single_quote.csv +0 -5
  501. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_single_quote_guessed.yml +0 -17
  502. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_single_quote_seed.yml +0 -1
  503. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_skip_suggest_if_empty_sample_records.csv +0 -5
  504. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_skip_suggest_if_empty_sample_records_guessed.yml +0 -2
  505. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_skip_suggest_if_empty_sample_records_seed.yml +0 -1
  506. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_string_single_column.csv +0 -4
  507. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_string_single_column_guessed.yml +0 -12
  508. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_string_single_column_seed.yml +0 -1
  509. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_string_single_column_with_header.csv +0 -5
  510. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_string_single_column_with_header_guessed.yml +0 -12
  511. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_string_single_column_with_header_seed.yml +0 -1
  512. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_tab_delimiter.csv +0 -4
  513. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_tab_delimiter_guessed.yml +0 -16
  514. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_tab_delimiter_seed.yml +0 -1
  515. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv_all_strings/test/test_simple.csv +0 -5
  516. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv_all_strings/test/test_simple_guessed.yml +0 -17
  517. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv_all_strings/test/test_simple_seed.yml +0 -1
  518. data/embulk-standards/src/test/resources/org/embulk/standards/preview/file/test/test_sample_buffer_bytes.csv +0 -5
  519. data/embulk-standards/src/test/resources/org/embulk/standards/preview/file/test/test_sample_buffer_bytes_exec.yml +0 -1
  520. data/embulk-standards/src/test/resources/org/embulk/standards/preview/file/test/test_sample_buffer_bytes_load.yml +0 -19
  521. data/embulk-standards/src/test/resources/org/embulk/standards/preview/file/test/test_sample_buffer_bytes_previewed.csv +0 -1
  522. data/embulk-standards/src/test/resources/org/embulk/standards/preview/file/test/test_simple.csv +0 -5
  523. data/embulk-standards/src/test/resources/org/embulk/standards/preview/file/test/test_simple_load.yml +0 -19
  524. data/embulk-standards/src/test/resources/org/embulk/standards/preview/file/test/test_simple_previewed.csv +0 -4
  525. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_keep.csv +0 -5
  526. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_keep_expected.csv +0 -4
  527. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_keep_filter.yml +0 -2
  528. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_keep_in.yml +0 -18
  529. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_keep_with_duplicated_column_names.csv +0 -5
  530. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_keep_with_duplicated_column_names.yml +0 -2
  531. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_keep_with_duplicated_column_names_expected.csv +0 -4
  532. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_keep_with_duplicated_column_names_in.yml +0 -17
  533. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_keep_with_unmatched_filter.yml +0 -3
  534. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_keep_without_unmatched_filter.yml +0 -2
  535. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_remove.csv +0 -5
  536. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_remove_expected.csv +0 -4
  537. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_remove_filter.yml +0 -2
  538. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_remove_in.yml +0 -18
  539. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_remove_with_unmatched_filter.yml +0 -3
  540. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_remove_without_unmatched_filter.yml +0 -2
  541. data/embulk-test/build.gradle +0 -6
  542. data/embulk-test/src/main/java/org/embulk/test/EmbulkTests.java +0 -75
  543. data/embulk-test/src/main/java/org/embulk/test/PreviewResultInputPlugin.java +0 -65
  544. data/embulk-test/src/main/java/org/embulk/test/TestingBulkLoader.java +0 -129
  545. data/embulk-test/src/main/java/org/embulk/test/TestingEmbulk.java +0 -710
  546. data/gradle/wrapper/gradle-wrapper.jar +0 -0
  547. data/gradle/wrapper/gradle-wrapper.properties +0 -5
  548. data/gradlew +0 -172
  549. data/gradlew.bat +0 -84
  550. data/lib/embulk/data/bundle/.bundle/config +0 -3
  551. data/lib/embulk/data/bundle/.ruby-version +0 -1
  552. data/lib/embulk/data/bundle/Gemfile +0 -31
  553. data/lib/embulk/data/bundle/embulk/filter/example.rb +0 -42
  554. data/lib/embulk/data/bundle/embulk/input/example.rb +0 -54
  555. data/lib/embulk/data/bundle/embulk/output/example.rb +0 -58
  556. data/lib/embulk/data/new/LICENSE.txt +0 -21
  557. data/lib/embulk/data/new/README.md.vm +0 -106
  558. data/lib/embulk/data/new/gitignore.vm +0 -17
  559. data/lib/embulk/data/new/java/build.gradle.vm +0 -96
  560. data/lib/embulk/data/new/java/config/checkstyle/checkstyle.xml +0 -128
  561. data/lib/embulk/data/new/java/config/checkstyle/default.xml +0 -108
  562. data/lib/embulk/data/new/java/decoder.java.vm +0 -86
  563. data/lib/embulk/data/new/java/encoder.java.vm +0 -88
  564. data/lib/embulk/data/new/java/file_input.java.vm +0 -145
  565. data/lib/embulk/data/new/java/file_output.java.vm +0 -95
  566. data/lib/embulk/data/new/java/filter.java.vm +0 -57
  567. data/lib/embulk/data/new/java/formatter.java.vm +0 -55
  568. data/lib/embulk/data/new/java/gradle/wrapper/gradle-wrapper.jar +0 -0
  569. data/lib/embulk/data/new/java/gradle/wrapper/gradle-wrapper.properties +0 -5
  570. data/lib/embulk/data/new/java/gradlew +0 -172
  571. data/lib/embulk/data/new/java/gradlew.bat +0 -84
  572. data/lib/embulk/data/new/java/input.java.vm +0 -89
  573. data/lib/embulk/data/new/java/output.java.vm +0 -79
  574. data/lib/embulk/data/new/java/parser.java.vm +0 -61
  575. data/lib/embulk/data/new/java/plugin_loader.rb.vm +0 -3
  576. data/lib/embulk/data/new/java/test.java.vm +0 -5
  577. data/lib/embulk/data/new/ruby/.ruby-version +0 -1
  578. data/lib/embulk/data/new/ruby/Gemfile +0 -2
  579. data/lib/embulk/data/new/ruby/Rakefile +0 -3
  580. data/lib/embulk/data/new/ruby/decoder_guess.rb.vm +0 -25
  581. data/lib/embulk/data/new/ruby/filter.rb.vm +0 -50
  582. data/lib/embulk/data/new/ruby/formatter.rb.vm +0 -49
  583. data/lib/embulk/data/new/ruby/gemspec.vm +0 -20
  584. data/lib/embulk/data/new/ruby/input.rb.vm +0 -59
  585. data/lib/embulk/data/new/ruby/output.rb.vm +0 -61
  586. data/lib/embulk/data/new/ruby/parser.rb.vm +0 -44
  587. data/lib/embulk/data/new/ruby/parser_guess.rb.vm +0 -65
  588. data/lib/embulk/data/package_data.rb +0 -59
  589. data/lib/embulk/guess/bzip2.rb +0 -23
  590. data/lib/embulk/guess/csv.rb +0 -374
  591. data/lib/embulk/guess/csv_all_strings.rb +0 -13
  592. data/lib/embulk/guess/gzip.rb +0 -18
  593. data/lib/embulk/guess/json.rb +0 -50
  594. data/lib/embulk/runner.rb +0 -53
  595. data/settings.gradle +0 -8
  596. data/test/helper.rb +0 -23
  597. data/test/monkey_strptime/mri/date/test_date_strptime.rb +0 -515
  598. data/test/monkey_strptime/run-test.rb +0 -29
  599. data/test/vanilla/guess/test_csv_all_strings.rb +0 -43
  600. data/test/vanilla/guess/test_csv_guess.rb +0 -170
  601. data/test/vanilla/guess/test_schema_guess.rb +0 -47
  602. data/test/vanilla/guess/test_time_format_guess.rb +0 -135
  603. data/test/vanilla/run-test.rb +0 -14
  604. data/test/vanilla/time/test_timestamp_parser.rb +0 -117
@@ -1,9 +0,0 @@
1
- package org.embulk.exec;
2
-
3
- import org.embulk.config.ConfigSource;
4
- import org.embulk.config.ConfigDiff;
5
-
6
- public interface ConfigurableGuessInputPlugin
7
- {
8
- ConfigDiff guess(ConfigSource execConfig, ConfigSource config);
9
- }
@@ -1,53 +0,0 @@
1
- package org.embulk.exec;
2
-
3
- import org.slf4j.ILoggerFactory;
4
- import com.google.common.base.Preconditions;
5
- import com.google.inject.Module;
6
- import com.google.inject.Binder;
7
- import com.google.inject.Scopes;
8
- import com.fasterxml.jackson.module.guice.ObjectMapperModule;
9
- import com.fasterxml.jackson.datatype.guava.GuavaModule;
10
- import com.fasterxml.jackson.datatype.joda.JodaModule;
11
- import org.embulk.config.ModelManager;
12
- import org.embulk.spi.time.DateTimeZoneSerDe;
13
- import org.embulk.spi.time.TimestampSerDe;
14
- import org.embulk.spi.ParserPlugin;
15
- import org.embulk.spi.ExecutorPlugin;
16
- import org.embulk.spi.BufferAllocator;
17
- import org.embulk.spi.util.CharsetSerDe;
18
- import org.embulk.spi.unit.LocalFileSerDe;
19
- import static org.embulk.plugin.InjectedPluginSource.registerPluginTo;
20
-
21
- public class ExecModule
22
- implements Module
23
- {
24
- @Override
25
- public void configure(Binder binder)
26
- {
27
- Preconditions.checkNotNull(binder, "binder is null.");
28
-
29
- binder.bind(BulkLoader.class);
30
-
31
- binder.bind(ILoggerFactory.class).toProvider(LoggerProvider.class).in(Scopes.SINGLETON);
32
- binder.bind(ModelManager.class).in(Scopes.SINGLETON);
33
- binder.bind(BufferAllocator.class).to(PooledBufferAllocator.class).in(Scopes.SINGLETON);
34
- binder.bind(TempFileAllocator.class).in(Scopes.SINGLETON);
35
-
36
- // GuessExecutor, PreviewExecutor
37
- registerPluginTo(binder, ParserPlugin.class, "system_guess", GuessExecutor.GuessParserPlugin.class);
38
- registerPluginTo(binder, ParserPlugin.class, "system_sampling", SamplingParserPlugin.class);
39
-
40
- // LocalExecutorPlugin
41
- registerPluginTo(binder, ExecutorPlugin.class, "local", LocalExecutorPlugin.class);
42
-
43
- // serde
44
- ObjectMapperModule mapper = new ObjectMapperModule();
45
- DateTimeZoneSerDe.configure(mapper);
46
- TimestampSerDe.configure(mapper);
47
- CharsetSerDe.configure(mapper);
48
- LocalFileSerDe.configure(mapper);
49
- mapper.registerModule(new GuavaModule()); // jackson-datatype-guava
50
- mapper.registerModule(new JodaModule()); // jackson-datatype-joda
51
- mapper.configure(binder);
52
- }
53
- }
@@ -1,10 +0,0 @@
1
- package org.embulk.exec;
2
-
3
- public class ExecutionInterruptedException
4
- extends RuntimeException
5
- {
6
- public ExecutionInterruptedException(Exception cause)
7
- {
8
- super(cause);
9
- }
10
- }
@@ -1,33 +0,0 @@
1
- package org.embulk.exec;
2
-
3
- import java.util.List;
4
- import org.embulk.config.ConfigDiff;
5
-
6
- public class ExecutionResult
7
- {
8
- private final ConfigDiff configDiff;
9
- private final boolean skipped;
10
- private final List<Throwable> ignoredExceptions;
11
-
12
- public ExecutionResult(ConfigDiff configDiff, boolean skipped, List<Throwable> ignoredExceptions)
13
- {
14
- this.configDiff = configDiff;
15
- this.skipped = skipped;
16
- this.ignoredExceptions = ignoredExceptions;
17
- }
18
-
19
- public ConfigDiff getConfigDiff()
20
- {
21
- return configDiff;
22
- }
23
-
24
- public boolean isSkipped()
25
- {
26
- return skipped;
27
- }
28
-
29
- public List<Throwable> getIgnoredExceptions()
30
- {
31
- return ignoredExceptions;
32
- }
33
- }
@@ -1,43 +0,0 @@
1
- package org.embulk.exec;
2
-
3
- import java.util.ServiceLoader;
4
- import com.google.inject.Module;
5
- import com.google.inject.Binder;
6
- import org.embulk.config.ConfigSource;
7
- import org.embulk.spi.Extension;
8
-
9
- /**
10
- * ExtensionServiceLoaderModule loads Extensions using java.util.ServiceLoader
11
- * mechanism.
12
- * Jar packages providing an extension need to include
13
- * META-INF/services/org.embulk.exec.Extension file. Contents of the file is
14
- * one-line text of the extension class name (e.g. com.example.MyPluginSourceExtension).
15
- */
16
- public class ExtensionServiceLoaderModule
17
- implements Module
18
- {
19
- private final ClassLoader classLoader;
20
- private final ConfigSource systemConfig;
21
-
22
- public ExtensionServiceLoaderModule(ConfigSource systemConfig)
23
- {
24
- this(ExtensionServiceLoaderModule.class.getClassLoader(), systemConfig);
25
- }
26
-
27
- public ExtensionServiceLoaderModule(ClassLoader classLoader, ConfigSource systemConfig)
28
- {
29
- this.classLoader = classLoader;
30
- this.systemConfig = systemConfig;
31
- }
32
-
33
- @Override
34
- public void configure(Binder binder)
35
- {
36
- ServiceLoader<Extension> serviceLoader = ServiceLoader.load(Extension.class, classLoader);
37
- for (Extension extension : serviceLoader) {
38
- for (Module module : extension.getModules(systemConfig)) {
39
- module.configure(binder);
40
- }
41
- }
42
- }
43
- }
@@ -1,16 +0,0 @@
1
- package org.embulk.exec;
2
-
3
- import javax.inject.Qualifier;
4
- import java.lang.annotation.Retention;
5
- import java.lang.annotation.Target;
6
- import static java.lang.annotation.ElementType.FIELD;
7
- import static java.lang.annotation.ElementType.METHOD;
8
- import static java.lang.annotation.ElementType.PARAMETER;
9
- import static java.lang.annotation.RetentionPolicy.RUNTIME;
10
-
11
- @Retention(RUNTIME)
12
- @Target({FIELD, PARAMETER, METHOD})
13
- @Qualifier
14
- public @interface ForGuess
15
- {
16
- }
@@ -1,16 +0,0 @@
1
- package org.embulk.exec;
2
-
3
- import javax.inject.Qualifier;
4
- import java.lang.annotation.Retention;
5
- import java.lang.annotation.Target;
6
- import static java.lang.annotation.ElementType.FIELD;
7
- import static java.lang.annotation.ElementType.METHOD;
8
- import static java.lang.annotation.ElementType.PARAMETER;
9
- import static java.lang.annotation.RetentionPolicy.RUNTIME;
10
-
11
- @Retention(RUNTIME)
12
- @Target({FIELD, PARAMETER, METHOD})
13
- @Qualifier
14
- public @interface ForSystemConfig
15
- {
16
- }
@@ -1,309 +0,0 @@
1
- package org.embulk.exec;
2
-
3
- import java.util.List;
4
- import java.util.Set;
5
- import java.util.ArrayList;
6
- import java.util.concurrent.ExecutionException;
7
- import com.google.common.collect.ImmutableList;
8
- import com.google.common.base.Throwables;
9
- import com.google.inject.Inject;
10
- import com.google.inject.Binder;
11
- import com.google.inject.multibindings.Multibinder;
12
- import org.embulk.plugin.PluginType;
13
- import org.embulk.config.Config;
14
- import org.embulk.config.ConfigDefault;
15
- import org.embulk.config.ConfigDiff;
16
- import org.embulk.config.Task;
17
- import org.embulk.config.TaskSource;
18
- import org.embulk.config.ConfigSource;
19
- import org.embulk.config.TaskReport;
20
- import org.embulk.spi.Schema;
21
- import org.embulk.spi.Page;
22
- import org.embulk.spi.Buffer;
23
- import org.embulk.spi.InputPlugin;
24
- import org.embulk.spi.FileInputPlugin;
25
- import org.embulk.spi.ParserPlugin;
26
- import org.embulk.spi.GuessPlugin;
27
- import org.embulk.spi.Exec;
28
- import org.embulk.spi.ExecAction;
29
- import org.embulk.spi.ExecSession;
30
- import org.embulk.spi.FileInput;
31
- import org.embulk.spi.PageOutput;
32
- import org.embulk.spi.TransactionalFileInput;
33
- import org.embulk.spi.FileInputRunner;
34
- import static org.embulk.spi.util.Inputs.each;
35
-
36
- public class GuessExecutor
37
- {
38
- private final List<PluginType> defaultGuessPlugins;
39
-
40
- private interface GuessExecutorSystemTask
41
- extends Task
42
- {
43
- @Config("guess_plugins")
44
- @ConfigDefault("[]")
45
- public List<PluginType> getGuessPlugins();
46
- }
47
-
48
- private interface GuessExecutorTask
49
- extends Task
50
- {
51
- @Config("guess_plugins")
52
- @ConfigDefault("[]")
53
- public List<PluginType> getGuessPlugins();
54
-
55
- @Config("exclude_guess_plugins")
56
- @ConfigDefault("[]")
57
- public List<PluginType> getExcludeGuessPlugins();
58
-
59
- @Config("guess_sample_buffer_bytes")
60
- @ConfigDefault("32768") // 32 * 1024
61
- public int getSampleBufferBytes();
62
- }
63
-
64
- public static void registerDefaultGuessPluginTo(Binder binder, PluginType type)
65
- {
66
- Multibinder<PluginType> multibinder = Multibinder.newSetBinder(binder, PluginType.class, ForGuess.class);
67
- multibinder.addBinding().toInstance(type);
68
- }
69
-
70
- // Used by FileInputRunner#guess(..)
71
- public static ConfigSource createSampleBufferConfigFromExecConfig(ConfigSource execConfig)
72
- {
73
- final GuessExecutorTask execTask = execConfig.loadConfig(GuessExecutorTask.class);
74
- return Exec.newConfigSource().set("sample_buffer_bytes", execTask.getSampleBufferBytes());
75
- }
76
-
77
- @Inject
78
- public GuessExecutor(@ForSystemConfig ConfigSource systemConfig,
79
- @ForGuess Set<PluginType> defaultGuessPlugins)
80
- {
81
- GuessExecutorSystemTask systemTask = systemConfig.loadConfig(GuessExecutorSystemTask.class);
82
-
83
- ImmutableList.Builder<PluginType> list = ImmutableList.builder();
84
- list.addAll(defaultGuessPlugins);
85
- list.addAll(systemTask.getGuessPlugins());
86
- this.defaultGuessPlugins = list.build();
87
- }
88
-
89
- public ConfigDiff guess(ExecSession exec, final ConfigSource config)
90
- {
91
- try {
92
- return Exec.doWith(exec, new ExecAction<ConfigDiff>() {
93
- public ConfigDiff run()
94
- {
95
- try (SetCurrentThreadName dontCare = new SetCurrentThreadName("guess")) {
96
- return doGuess(config);
97
- }
98
- }
99
- });
100
- } catch (ExecutionException ex) {
101
- throw Throwables.propagate(ex.getCause());
102
- }
103
- }
104
-
105
- protected InputPlugin newInputPlugin(ConfigSource inputConfig)
106
- {
107
- return Exec.newPlugin(InputPlugin.class, inputConfig.get(PluginType.class, "type"));
108
- }
109
-
110
- private ConfigDiff doGuess(ConfigSource config)
111
- {
112
- ConfigSource inputConfig = config.getNested("in");
113
- ConfigSource execConfig = config.getNestedOrGetEmpty("exec");
114
-
115
- InputPlugin input = newInputPlugin(inputConfig);
116
-
117
- ConfigDiff inputGuessed;
118
- if (input instanceof ConfigurableGuessInputPlugin) {
119
- inputGuessed = ((ConfigurableGuessInputPlugin) input).guess(execConfig, inputConfig);
120
- }
121
- else {
122
- try {
123
- inputGuessed = input.guess(inputConfig);
124
- } catch (AbstractMethodError ex) {
125
- // for backward compatibility with embulk v0.4 interface
126
- throw new UnsupportedOperationException(input.getClass().getSimpleName()+".guess(ConfigSource) is not implemented. This input plugin does not support guessing.");
127
- }
128
- }
129
-
130
- ConfigDiff wrapped = Exec.newConfigDiff();
131
- wrapped.getNestedOrSetEmpty("in").merge(inputGuessed);
132
- return wrapped;
133
- }
134
-
135
- // called by FileInputRunner
136
- public ConfigDiff guessParserConfig(Buffer sample, ConfigSource inputConfig, ConfigSource execConfig)
137
- {
138
- List<PluginType> guessPlugins = new ArrayList<PluginType>(defaultGuessPlugins);
139
-
140
- GuessExecutorTask task = execConfig.loadConfig(GuessExecutorTask.class);
141
- guessPlugins.addAll(task.getGuessPlugins());
142
- guessPlugins.removeAll(task.getExcludeGuessPlugins());
143
-
144
- return guessParserConfig(sample, inputConfig, guessPlugins);
145
- }
146
-
147
- private ConfigDiff guessParserConfig(Buffer sample,
148
- ConfigSource config, List<PluginType> guessPlugins)
149
- {
150
- // repeat guessing upto 10 times
151
- ConfigDiff lastGuessed = Exec.newConfigDiff();
152
- for (int i=0; i < 10; i++) {
153
- // include last-guessed config to run guess input
154
- ConfigSource originalConfig = config.deepCopy().merge(lastGuessed);
155
- ConfigSource guessInputConfig = originalConfig.deepCopy();
156
- guessInputConfig.getNestedOrSetEmpty("parser")
157
- .set("type", "system_guess") // override in.parser.type so that FileInputRunner.run uses GuessParserPlugin
158
- .set("guess_plugins", guessPlugins)
159
- .set("orig_config", originalConfig);
160
-
161
- // run FileInputPlugin
162
- final FileInputRunner input = new FileInputRunner(new BufferFileInputPlugin(sample));
163
- ConfigDiff guessed;
164
- try {
165
- input.transaction(guessInputConfig, new InputPlugin.Control() {
166
- public List<TaskReport> run(TaskSource inputTaskSource, Schema schema, int taskCount)
167
- {
168
- if (taskCount == 0) {
169
- throw new NoSampleException("No input files to guess");
170
- }
171
- input.run(inputTaskSource, null, 0, new PageOutput() {
172
- @Override
173
- public void add(Page page)
174
- {
175
- throw new RuntimeException("Input plugin must be a FileInputPlugin to guess parser configuration"); // TODO exception class
176
- }
177
-
178
- @Override
179
- public void finish() { }
180
-
181
- @Override
182
- public void close() { }
183
- });
184
- throw new AssertionError("Guess executor must throw GuessedNoticeError");
185
- }
186
- });
187
-
188
- throw new AssertionError("Guess executor must throw GuessedNoticeError");
189
-
190
- } catch (GuessedNoticeError error) {
191
- guessed = lastGuessed.deepCopy().merge(error.getGuessedConfig());
192
- }
193
-
194
- // merge to the last-guessed config
195
- if (lastGuessed.equals(guessed)) {
196
- // not changed
197
- return lastGuessed;
198
- }
199
- lastGuessed = guessed;
200
- }
201
-
202
- return lastGuessed;
203
- }
204
-
205
- public static class GuessParserPlugin
206
- implements ParserPlugin
207
- {
208
- private interface PluginTask
209
- extends Task
210
- {
211
- @Config("guess_plugins")
212
- public List<PluginType> getGuessPluginTypes();
213
-
214
- @Config("orig_config")
215
- public ConfigSource getOriginalConfig();
216
- }
217
-
218
- @Override
219
- public void transaction(ConfigSource config, ParserPlugin.Control control)
220
- {
221
- PluginTask task = config.loadConfig(PluginTask.class);
222
- control.run(task.dump(), null);
223
- }
224
-
225
- @Override
226
- public void run(TaskSource taskSource, Schema schema,
227
- FileInput input, PageOutput pageOutput)
228
- {
229
- PluginTask task = taskSource.loadTask(PluginTask.class);
230
- final ConfigSource originalConfig = task.getOriginalConfig();
231
-
232
- // get sample buffer
233
- Buffer sample = readSample(input, 32*1024); // TODO get sample size from system config. See also SamplingParserPlugin().
234
-
235
- // load guess plugins
236
- ImmutableList.Builder<GuessPlugin> builder = ImmutableList.builder();
237
- for (PluginType guessType : task.getGuessPluginTypes()) {
238
- GuessPlugin guess = Exec.newPlugin(GuessPlugin.class, guessType);
239
- builder.add(guess);
240
- }
241
- List<GuessPlugin> guesses = builder.build();
242
-
243
- // run guess plugins
244
- ConfigSource mergedConfig = originalConfig.deepCopy();
245
- ConfigDiff mergedGuessed = Exec.newConfigDiff();
246
- for (int i=0; i < guesses.size(); i++) {
247
- ConfigDiff guessed = guesses.get(i).guess(originalConfig, sample);
248
- guessed = addAssumedDecoderConfigs(originalConfig, guessed);
249
- mergedGuessed.merge(guessed);
250
- mergedConfig.merge(mergedGuessed);
251
- if (!mergedConfig.equals(originalConfig)) {
252
- // config updated
253
- throw new GuessedNoticeError(mergedGuessed);
254
- }
255
- }
256
- throw new GuessedNoticeError(mergedGuessed);
257
- }
258
-
259
- private static Buffer readSample(FileInput fileInput, int sampleSize)
260
- {
261
- Buffer sample = Buffer.allocate(sampleSize);
262
- try {
263
- SamplingParserPlugin.readSample(fileInput, sample, 0, sampleSize);
264
- } catch (RuntimeException ex) {
265
- // ignores exceptions because FileDecoderPlugin can throw exceptions
266
- // such as "Unexpected end of ZLIB input stream" if decoder plugin
267
- // is wrongly guessed.
268
- }
269
- if (sample.limit() > 0) {
270
- return sample;
271
- }
272
- throw new NoSampleException("No input buffer to guess");
273
- }
274
-
275
- private static class ConfigSourceList extends ArrayList<ConfigSource> { };
276
-
277
- private static ConfigDiff addAssumedDecoderConfigs(ConfigSource originalConfig, ConfigDiff guessed)
278
- {
279
- List<ConfigSource> guessedDecoders = guessed.get(ConfigSourceList.class, "decoders", null);
280
- if (guessedDecoders == null) {
281
- return guessed;
282
- } else {
283
- List<ConfigSource> assumedDecoders = originalConfig.get(ConfigSourceList.class, "decoders", new ConfigSourceList());
284
- ImmutableList.Builder<ConfigSource> added = ImmutableList.builder();
285
- for (ConfigSource assuemed : assumedDecoders) {
286
- added.add(Exec.newConfigSource());
287
- }
288
- added.addAll(guessedDecoders);
289
- return guessed.set("decoders", added.build());
290
- }
291
- }
292
- }
293
-
294
- public static class GuessedNoticeError
295
- extends Error
296
- {
297
- private final ConfigDiff guessedConfig;
298
-
299
- public GuessedNoticeError(ConfigDiff guessedConfig)
300
- {
301
- this.guessedConfig = guessedConfig;
302
- }
303
-
304
- public ConfigDiff getGuessedConfig()
305
- {
306
- return guessedConfig;
307
- }
308
- }
309
- }