embulk 0.8.38-java → 0.10.27-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 (603) 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 -761
  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 -127
  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 -232
  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 -108
  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.4.rst +0 -18
  404. data/embulk-docs/src/release/release-0.8.5.rst +0 -11
  405. data/embulk-docs/src/release/release-0.8.6.rst +0 -14
  406. data/embulk-docs/src/release/release-0.8.7.rst +0 -18
  407. data/embulk-docs/src/release/release-0.8.8.rst +0 -18
  408. data/embulk-docs/src/release/release-0.8.9.rst +0 -14
  409. data/embulk-jruby-strptime/build.gradle +0 -3
  410. data/embulk-jruby-strptime/src/main/java/org/embulk/spi/time/RubyDateParser.java +0 -121
  411. data/embulk-jruby-strptime/src/main/java/org/embulk/spi/time/StrptimeFormat.java +0 -53
  412. data/embulk-jruby-strptime/src/main/java/org/embulk/spi/time/StrptimeParser.java +0 -884
  413. data/embulk-jruby-strptime/src/main/java/org/embulk/spi/time/StrptimeToken.java +0 -111
  414. data/embulk-jruby-strptime/src/main/java/org/embulk/spi/time/TimeZoneConverter.java +0 -466
  415. data/embulk-jruby-strptime/src/main/java/org/embulk/spi/time/lexer/StrptimeLexer.flex +0 -62
  416. data/embulk-jruby-strptime/src/main/java/org/embulk/spi/time/lexer/StrptimeLexer.java +0 -577
  417. data/embulk-standards/build.gradle +0 -7
  418. data/embulk-standards/src/main/java/org/embulk/standards/Bzip2FileDecoderPlugin.java +0 -55
  419. data/embulk-standards/src/main/java/org/embulk/standards/Bzip2FileEncoderPlugin.java +0 -67
  420. data/embulk-standards/src/main/java/org/embulk/standards/ConfigInputPlugin.java +0 -170
  421. data/embulk-standards/src/main/java/org/embulk/standards/CsvFormatterPlugin.java +0 -295
  422. data/embulk-standards/src/main/java/org/embulk/standards/CsvParserPlugin.java +0 -416
  423. data/embulk-standards/src/main/java/org/embulk/standards/CsvTokenizer.java +0 -545
  424. data/embulk-standards/src/main/java/org/embulk/standards/GzipFileDecoderPlugin.java +0 -55
  425. data/embulk-standards/src/main/java/org/embulk/standards/GzipFileEncoderPlugin.java +0 -71
  426. data/embulk-standards/src/main/java/org/embulk/standards/JsonParserPlugin.java +0 -235
  427. data/embulk-standards/src/main/java/org/embulk/standards/LocalFileInputPlugin.java +0 -232
  428. data/embulk-standards/src/main/java/org/embulk/standards/LocalFileOutputPlugin.java +0 -148
  429. data/embulk-standards/src/main/java/org/embulk/standards/NullOutputPlugin.java +0 -59
  430. data/embulk-standards/src/main/java/org/embulk/standards/RemoveColumnsFilterPlugin.java +0 -268
  431. data/embulk-standards/src/main/java/org/embulk/standards/RenameFilterPlugin.java +0 -479
  432. data/embulk-standards/src/main/java/org/embulk/standards/StandardPluginExtension.java +0 -16
  433. data/embulk-standards/src/main/java/org/embulk/standards/StandardPluginModule.java +0 -60
  434. data/embulk-standards/src/main/java/org/embulk/standards/StdoutOutputPlugin.java +0 -91
  435. data/embulk-standards/src/main/resources/META-INF/services/org.embulk.spi.Extension +0 -1
  436. data/embulk-standards/src/test/java/org/embulk/standards/TestCsvFormatterPlugin.java +0 -312
  437. data/embulk-standards/src/test/java/org/embulk/standards/TestCsvParserPlugin.java +0 -75
  438. data/embulk-standards/src/test/java/org/embulk/standards/TestCsvTokenizer.java +0 -457
  439. data/embulk-standards/src/test/java/org/embulk/standards/TestJsonParserPlugin.java +0 -351
  440. data/embulk-standards/src/test/java/org/embulk/standards/TestRemoveColumnsFilterPlugin.java +0 -121
  441. data/embulk-standards/src/test/java/org/embulk/standards/TestRenameFilterPlugin.java +0 -1020
  442. data/embulk-standards/src/test/java/org/embulk/standards/guess/TestCsvAllStringsGuessPlugin.java +0 -38
  443. data/embulk-standards/src/test/java/org/embulk/standards/guess/TestCsvGuessPlugin.java +0 -248
  444. data/embulk-standards/src/test/java/org/embulk/standards/preview/TestFilePreview.java +0 -73
  445. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_int_single_column_row.csv +0 -1
  446. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_int_single_column_row_and_header.csv +0 -2
  447. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_int_single_column_row_and_header_guessed.yml +0 -12
  448. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_int_single_column_row_and_header_seed.yml +0 -1
  449. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_int_single_column_row_guessed.yml +0 -12
  450. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_int_single_column_row_seed.yml +0 -1
  451. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows.csv +0 -1
  452. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_and_header.csv +0 -2
  453. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_and_header_guessed.yml +0 -16
  454. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_and_header_seed.yml +0 -1
  455. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_and_header_with_trim_needed.csv +0 -2
  456. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_and_header_with_trim_needed_guessed.yml +0 -16
  457. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_and_header_with_trim_needed_seed.yml +0 -1
  458. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_guessed.yml +0 -16
  459. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_seed.yml +0 -1
  460. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_with_trim_needed.csv +0 -1
  461. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_with_trim_needed_guessed.yml +0 -16
  462. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_rows_with_trim_needed_seed.yml +0 -1
  463. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_string_single_column_row.csv +0 -1
  464. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_string_single_column_row_and_header.csv +0 -2
  465. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_string_single_column_row_and_header_guessed.yml +0 -12
  466. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_string_single_column_row_and_header_seed.yml +0 -1
  467. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_string_single_column_row_guessed.yml +0 -12
  468. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_1_string_single_column_row_seed.yml +0 -1
  469. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_int_single_column_rows.csv +0 -2
  470. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_int_single_column_rows_guessed.yml +0 -12
  471. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_int_single_column_rows_seed.yml +0 -1
  472. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_rows.csv +0 -2
  473. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_rows_and_header.csv +0 -3
  474. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_rows_and_header_guessed.yml +0 -16
  475. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_rows_and_header_seed.yml +0 -1
  476. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_rows_guessed.yml +0 -16
  477. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_rows_seed.yml +0 -1
  478. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_string_single_column_rows.csv +0 -2
  479. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_string_single_column_rows_guessed.yml +0 -12
  480. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_2_string_single_column_rows_seed.yml +0 -1
  481. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_backslash_escape.csv +0 -5
  482. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_backslash_escape_guessed.yml +0 -17
  483. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_backslash_escape_seed.yml +0 -1
  484. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_double_single_column.csv +0 -12
  485. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_double_single_column_guessed.yml +0 -12
  486. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_double_single_column_seed.yml +0 -1
  487. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_int_single_column.csv +0 -4
  488. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_int_single_column_guessed.yml +0 -12
  489. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_int_single_column_seed.yml +0 -1
  490. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_int_single_column_with_header.csv +0 -5
  491. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_int_single_column_with_header_guessed.yml +0 -12
  492. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_int_single_column_with_header_seed.yml +0 -1
  493. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_semicolon_delimiter.csv +0 -5
  494. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_semicolon_delimiter_guessed.yml +0 -17
  495. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_semicolon_delimiter_seed.yml +0 -1
  496. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_simple.csv +0 -5
  497. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_simple_guessed.yml +0 -17
  498. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_simple_seed.yml +0 -1
  499. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_single_quote.csv +0 -5
  500. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_single_quote_guessed.yml +0 -17
  501. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_single_quote_seed.yml +0 -1
  502. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_skip_suggest_if_empty_sample_records.csv +0 -5
  503. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_skip_suggest_if_empty_sample_records_guessed.yml +0 -2
  504. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_skip_suggest_if_empty_sample_records_seed.yml +0 -1
  505. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_string_single_column.csv +0 -4
  506. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_string_single_column_guessed.yml +0 -12
  507. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_string_single_column_seed.yml +0 -1
  508. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_string_single_column_with_header.csv +0 -5
  509. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_string_single_column_with_header_guessed.yml +0 -12
  510. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_string_single_column_with_header_seed.yml +0 -1
  511. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_tab_delimiter.csv +0 -4
  512. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_tab_delimiter_guessed.yml +0 -16
  513. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv/test/test_tab_delimiter_seed.yml +0 -1
  514. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv_all_strings/test/test_simple.csv +0 -5
  515. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv_all_strings/test/test_simple_guessed.yml +0 -17
  516. data/embulk-standards/src/test/resources/org/embulk/standards/guess/csv_all_strings/test/test_simple_seed.yml +0 -1
  517. data/embulk-standards/src/test/resources/org/embulk/standards/preview/file/test/test_sample_buffer_bytes.csv +0 -5
  518. data/embulk-standards/src/test/resources/org/embulk/standards/preview/file/test/test_sample_buffer_bytes_exec.yml +0 -1
  519. data/embulk-standards/src/test/resources/org/embulk/standards/preview/file/test/test_sample_buffer_bytes_load.yml +0 -19
  520. data/embulk-standards/src/test/resources/org/embulk/standards/preview/file/test/test_sample_buffer_bytes_previewed.csv +0 -1
  521. data/embulk-standards/src/test/resources/org/embulk/standards/preview/file/test/test_simple.csv +0 -5
  522. data/embulk-standards/src/test/resources/org/embulk/standards/preview/file/test/test_simple_load.yml +0 -19
  523. data/embulk-standards/src/test/resources/org/embulk/standards/preview/file/test/test_simple_previewed.csv +0 -4
  524. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_keep.csv +0 -5
  525. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_keep_expected.csv +0 -4
  526. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_keep_filter.yml +0 -2
  527. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_keep_in.yml +0 -18
  528. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_keep_with_duplicated_column_names.csv +0 -5
  529. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_keep_with_duplicated_column_names.yml +0 -2
  530. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_keep_with_duplicated_column_names_expected.csv +0 -4
  531. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_keep_with_duplicated_column_names_in.yml +0 -17
  532. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_keep_with_unmatched_filter.yml +0 -3
  533. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_keep_without_unmatched_filter.yml +0 -2
  534. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_remove.csv +0 -5
  535. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_remove_expected.csv +0 -4
  536. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_remove_filter.yml +0 -2
  537. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_remove_in.yml +0 -18
  538. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_remove_with_unmatched_filter.yml +0 -3
  539. data/embulk-standards/src/test/resources/org/embulk/standards/remove_columns/test/test_remove_without_unmatched_filter.yml +0 -2
  540. data/embulk-test/build.gradle +0 -6
  541. data/embulk-test/src/main/java/org/embulk/test/EmbulkTests.java +0 -75
  542. data/embulk-test/src/main/java/org/embulk/test/PreviewResultInputPlugin.java +0 -65
  543. data/embulk-test/src/main/java/org/embulk/test/TestingBulkLoader.java +0 -129
  544. data/embulk-test/src/main/java/org/embulk/test/TestingEmbulk.java +0 -710
  545. data/gradle/wrapper/gradle-wrapper.jar +0 -0
  546. data/gradle/wrapper/gradle-wrapper.properties +0 -5
  547. data/gradlew +0 -172
  548. data/gradlew.bat +0 -84
  549. data/lib/embulk/data/bundle/.bundle/config +0 -3
  550. data/lib/embulk/data/bundle/.ruby-version +0 -1
  551. data/lib/embulk/data/bundle/Gemfile +0 -31
  552. data/lib/embulk/data/bundle/embulk/filter/example.rb +0 -42
  553. data/lib/embulk/data/bundle/embulk/input/example.rb +0 -54
  554. data/lib/embulk/data/bundle/embulk/output/example.rb +0 -58
  555. data/lib/embulk/data/new/LICENSE.txt +0 -21
  556. data/lib/embulk/data/new/README.md.vm +0 -106
  557. data/lib/embulk/data/new/gitignore.vm +0 -17
  558. data/lib/embulk/data/new/java/build.gradle.vm +0 -96
  559. data/lib/embulk/data/new/java/config/checkstyle/checkstyle.xml +0 -128
  560. data/lib/embulk/data/new/java/config/checkstyle/default.xml +0 -108
  561. data/lib/embulk/data/new/java/decoder.java.vm +0 -86
  562. data/lib/embulk/data/new/java/encoder.java.vm +0 -88
  563. data/lib/embulk/data/new/java/file_input.java.vm +0 -145
  564. data/lib/embulk/data/new/java/file_output.java.vm +0 -95
  565. data/lib/embulk/data/new/java/filter.java.vm +0 -57
  566. data/lib/embulk/data/new/java/formatter.java.vm +0 -55
  567. data/lib/embulk/data/new/java/gradle/wrapper/gradle-wrapper.jar +0 -0
  568. data/lib/embulk/data/new/java/gradle/wrapper/gradle-wrapper.properties +0 -5
  569. data/lib/embulk/data/new/java/gradlew +0 -172
  570. data/lib/embulk/data/new/java/gradlew.bat +0 -84
  571. data/lib/embulk/data/new/java/input.java.vm +0 -89
  572. data/lib/embulk/data/new/java/output.java.vm +0 -79
  573. data/lib/embulk/data/new/java/parser.java.vm +0 -61
  574. data/lib/embulk/data/new/java/plugin_loader.rb.vm +0 -3
  575. data/lib/embulk/data/new/java/test.java.vm +0 -5
  576. data/lib/embulk/data/new/ruby/.ruby-version +0 -1
  577. data/lib/embulk/data/new/ruby/Gemfile +0 -2
  578. data/lib/embulk/data/new/ruby/Rakefile +0 -3
  579. data/lib/embulk/data/new/ruby/decoder_guess.rb.vm +0 -25
  580. data/lib/embulk/data/new/ruby/filter.rb.vm +0 -50
  581. data/lib/embulk/data/new/ruby/formatter.rb.vm +0 -49
  582. data/lib/embulk/data/new/ruby/gemspec.vm +0 -20
  583. data/lib/embulk/data/new/ruby/input.rb.vm +0 -59
  584. data/lib/embulk/data/new/ruby/output.rb.vm +0 -61
  585. data/lib/embulk/data/new/ruby/parser.rb.vm +0 -44
  586. data/lib/embulk/data/new/ruby/parser_guess.rb.vm +0 -65
  587. data/lib/embulk/data/package_data.rb +0 -59
  588. data/lib/embulk/guess/bzip2.rb +0 -23
  589. data/lib/embulk/guess/csv.rb +0 -374
  590. data/lib/embulk/guess/csv_all_strings.rb +0 -13
  591. data/lib/embulk/guess/gzip.rb +0 -18
  592. data/lib/embulk/guess/json.rb +0 -50
  593. data/lib/embulk/runner.rb +0 -53
  594. data/settings.gradle +0 -8
  595. data/test/helper.rb +0 -23
  596. data/test/monkey_strptime/mri/date/test_date_strptime.rb +0 -515
  597. data/test/monkey_strptime/run-test.rb +0 -29
  598. data/test/vanilla/guess/test_csv_all_strings.rb +0 -43
  599. data/test/vanilla/guess/test_csv_guess.rb +0 -170
  600. data/test/vanilla/guess/test_schema_guess.rb +0 -47
  601. data/test/vanilla/guess/test_time_format_guess.rb +0 -135
  602. data/test/vanilla/run-test.rb +0 -14
  603. data/test/vanilla/time/test_timestamp_parser.rb +0 -102
@@ -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
- }