elasticsearch-api 6.0.1 → 7.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (454) hide show
  1. checksums.yaml +5 -5
  2. data/Gemfile +23 -0
  3. data/LICENSE.txt +199 -10
  4. data/README.md +3 -3
  5. data/Rakefile +31 -2
  6. data/elasticsearch-api.gemspec +21 -4
  7. data/lib/elasticsearch/api/actions/abort_benchmark.rb +17 -0
  8. data/lib/elasticsearch/api/actions/benchmark.rb +23 -3
  9. data/lib/elasticsearch/api/actions/bulk.rb +38 -18
  10. data/lib/elasticsearch/api/actions/cat/aliases.rb +30 -14
  11. data/lib/elasticsearch/api/actions/cat/allocation.rb +31 -15
  12. data/lib/elasticsearch/api/actions/cat/count.rb +30 -9
  13. data/lib/elasticsearch/api/actions/cat/fielddata.rb +32 -11
  14. data/lib/elasticsearch/api/actions/cat/health.rb +31 -10
  15. data/lib/elasticsearch/api/actions/cat/help.rb +25 -3
  16. data/lib/elasticsearch/api/actions/cat/indices.rb +33 -13
  17. data/lib/elasticsearch/api/actions/cat/master.rb +30 -9
  18. data/lib/elasticsearch/api/actions/cat/nodeattrs.rb +30 -8
  19. data/lib/elasticsearch/api/actions/cat/nodes.rb +31 -10
  20. data/lib/elasticsearch/api/actions/cat/params_registry.rb +61 -0
  21. data/lib/elasticsearch/api/actions/cat/pending_tasks.rb +30 -9
  22. data/lib/elasticsearch/api/actions/cat/plugins.rb +30 -8
  23. data/lib/elasticsearch/api/actions/cat/recovery.rb +30 -10
  24. data/lib/elasticsearch/api/actions/cat/repositories.rb +30 -8
  25. data/lib/elasticsearch/api/actions/cat/segments.rb +30 -8
  26. data/lib/elasticsearch/api/actions/cat/shards.rb +31 -12
  27. data/lib/elasticsearch/api/actions/cat/snapshots.rb +30 -10
  28. data/lib/elasticsearch/api/actions/cat/tasks.rb +31 -11
  29. data/lib/elasticsearch/api/actions/cat/templates.rb +31 -10
  30. data/lib/elasticsearch/api/actions/cat/thread_pool.rb +32 -12
  31. data/lib/elasticsearch/api/actions/clear_scroll.rb +21 -6
  32. data/lib/elasticsearch/api/actions/cluster/allocation_explain.rb +25 -4
  33. data/lib/elasticsearch/api/actions/cluster/get_settings.rb +27 -6
  34. data/lib/elasticsearch/api/actions/cluster/health.rb +35 -13
  35. data/lib/elasticsearch/api/actions/cluster/params_registry.rb +61 -0
  36. data/lib/elasticsearch/api/actions/cluster/pending_tasks.rb +25 -4
  37. data/lib/elasticsearch/api/actions/cluster/put_settings.rb +26 -3
  38. data/lib/elasticsearch/api/actions/cluster/remote_info.rb +17 -0
  39. data/lib/elasticsearch/api/actions/cluster/reroute.rb +29 -3
  40. data/lib/elasticsearch/api/actions/cluster/state.rb +31 -14
  41. data/lib/elasticsearch/api/actions/cluster/stats.rb +25 -5
  42. data/lib/elasticsearch/api/actions/count.rb +44 -34
  43. data/lib/elasticsearch/api/actions/create.rb +17 -0
  44. data/lib/elasticsearch/api/actions/delete.rb +38 -18
  45. data/lib/elasticsearch/api/actions/delete_by_query.rb +40 -21
  46. data/lib/elasticsearch/api/actions/delete_by_rethrottle.rb +46 -0
  47. data/lib/elasticsearch/api/actions/delete_script.rb +28 -11
  48. data/lib/elasticsearch/api/actions/exists.rb +37 -19
  49. data/lib/elasticsearch/api/actions/exists_source.rb +68 -0
  50. data/lib/elasticsearch/api/actions/explain.rb +54 -40
  51. data/lib/elasticsearch/api/actions/field_caps.rb +28 -10
  52. data/lib/elasticsearch/api/actions/get.rb +45 -29
  53. data/lib/elasticsearch/api/actions/get_script.rb +28 -5
  54. data/lib/elasticsearch/api/actions/get_source.rb +53 -27
  55. data/lib/elasticsearch/api/actions/index.rb +37 -15
  56. data/lib/elasticsearch/api/actions/indices/analyze.rb +30 -24
  57. data/lib/elasticsearch/api/actions/indices/clear_cache.rb +31 -14
  58. data/lib/elasticsearch/api/actions/indices/close.rb +29 -10
  59. data/lib/elasticsearch/api/actions/indices/create.rb +38 -20
  60. data/lib/elasticsearch/api/actions/indices/delete.rb +28 -9
  61. data/lib/elasticsearch/api/actions/indices/delete_alias.rb +25 -3
  62. data/lib/elasticsearch/api/actions/indices/delete_template.rb +25 -3
  63. data/lib/elasticsearch/api/actions/indices/exists.rb +29 -11
  64. data/lib/elasticsearch/api/actions/indices/exists_alias.rb +27 -10
  65. data/lib/elasticsearch/api/actions/indices/exists_template.rb +26 -4
  66. data/lib/elasticsearch/api/actions/indices/exists_type.rb +27 -10
  67. data/lib/elasticsearch/api/actions/indices/flush.rb +28 -8
  68. data/lib/elasticsearch/api/actions/indices/flush_synced.rb +26 -7
  69. data/lib/elasticsearch/api/actions/indices/forcemerge.rb +36 -15
  70. data/lib/elasticsearch/api/actions/indices/freeze.rb +40 -0
  71. data/lib/elasticsearch/api/actions/indices/get.rb +37 -23
  72. data/lib/elasticsearch/api/actions/indices/get_alias.rb +31 -20
  73. data/lib/elasticsearch/api/actions/indices/get_field_mapping.rb +37 -23
  74. data/lib/elasticsearch/api/actions/indices/get_mapping.rb +36 -21
  75. data/lib/elasticsearch/api/actions/indices/get_settings.rb +38 -28
  76. data/lib/elasticsearch/api/actions/indices/get_template.rb +30 -6
  77. data/lib/elasticsearch/api/actions/indices/open.rb +35 -21
  78. data/lib/elasticsearch/api/actions/indices/params_registry.rb +61 -0
  79. data/lib/elasticsearch/api/actions/indices/put_alias.rb +27 -4
  80. data/lib/elasticsearch/api/actions/indices/put_mapping.rb +37 -32
  81. data/lib/elasticsearch/api/actions/indices/put_settings.rb +36 -28
  82. data/lib/elasticsearch/api/actions/indices/put_template.rb +32 -6
  83. data/lib/elasticsearch/api/actions/indices/recovery.rb +25 -6
  84. data/lib/elasticsearch/api/actions/indices/refresh.rb +30 -19
  85. data/lib/elasticsearch/api/actions/indices/rollover.rb +31 -12
  86. data/lib/elasticsearch/api/actions/indices/segments.rb +32 -21
  87. data/lib/elasticsearch/api/actions/indices/shard_stores.rb +27 -8
  88. data/lib/elasticsearch/api/actions/indices/shrink.rb +27 -13
  89. data/lib/elasticsearch/api/actions/indices/split.rb +59 -0
  90. data/lib/elasticsearch/api/actions/indices/stats.rb +51 -29
  91. data/lib/elasticsearch/api/actions/indices/unfreeze.rb +39 -0
  92. data/lib/elasticsearch/api/actions/indices/update_aliases.rb +28 -5
  93. data/lib/elasticsearch/api/actions/indices/upgrade.rb +34 -17
  94. data/lib/elasticsearch/api/actions/indices/validate_query.rb +45 -36
  95. data/lib/elasticsearch/api/actions/info.rb +17 -0
  96. data/lib/elasticsearch/api/actions/ingest/delete_pipeline.rb +25 -4
  97. data/lib/elasticsearch/api/actions/ingest/get_pipeline.rb +23 -3
  98. data/lib/elasticsearch/api/actions/ingest/params_registry.rb +61 -0
  99. data/lib/elasticsearch/api/actions/ingest/processor_grok.rb +29 -0
  100. data/lib/elasticsearch/api/actions/ingest/put_pipeline.rb +25 -4
  101. data/lib/elasticsearch/api/actions/ingest/simulate.rb +23 -3
  102. data/lib/elasticsearch/api/actions/mget.rb +37 -25
  103. data/lib/elasticsearch/api/actions/msearch.rb +36 -9
  104. data/lib/elasticsearch/api/actions/msearch_template.rb +33 -4
  105. data/lib/elasticsearch/api/actions/mtermvectors.rb +52 -33
  106. data/lib/elasticsearch/api/actions/nodes/hot_threads.rb +31 -11
  107. data/lib/elasticsearch/api/actions/nodes/info.rb +40 -19
  108. data/lib/elasticsearch/api/actions/nodes/params_registry.rb +61 -0
  109. data/lib/elasticsearch/api/actions/nodes/reload_secure_settings.rb +54 -0
  110. data/lib/elasticsearch/api/actions/nodes/shutdown.rb +25 -5
  111. data/lib/elasticsearch/api/actions/nodes/stats.rb +39 -39
  112. data/lib/elasticsearch/api/actions/nodes/usage.rb +31 -0
  113. data/lib/elasticsearch/api/actions/params_registry.rb +59 -0
  114. data/lib/elasticsearch/api/actions/ping.rb +17 -0
  115. data/lib/elasticsearch/api/actions/put_script.rb +32 -14
  116. data/lib/elasticsearch/api/actions/rank_eval.rb +53 -0
  117. data/lib/elasticsearch/api/actions/reindex.rb +38 -18
  118. data/lib/elasticsearch/api/actions/reindex_rethrottle.rb +46 -0
  119. data/lib/elasticsearch/api/actions/remote/info.rb +17 -0
  120. data/lib/elasticsearch/api/actions/render_search_template.rb +24 -4
  121. data/lib/elasticsearch/api/actions/scripts_painless_execute.rb +38 -0
  122. data/lib/elasticsearch/api/actions/scroll.rb +30 -8
  123. data/lib/elasticsearch/api/actions/search.rb +46 -20
  124. data/lib/elasticsearch/api/actions/search_shards.rb +29 -8
  125. data/lib/elasticsearch/api/actions/search_template.rb +51 -27
  126. data/lib/elasticsearch/api/actions/snapshot/create.rb +25 -5
  127. data/lib/elasticsearch/api/actions/snapshot/create_repository.rb +27 -6
  128. data/lib/elasticsearch/api/actions/snapshot/delete.rb +23 -5
  129. data/lib/elasticsearch/api/actions/snapshot/delete_repository.rb +25 -6
  130. data/lib/elasticsearch/api/actions/snapshot/get.rb +28 -8
  131. data/lib/elasticsearch/api/actions/snapshot/get_repository.rb +25 -6
  132. data/lib/elasticsearch/api/actions/snapshot/params_registry.rb +61 -0
  133. data/lib/elasticsearch/api/actions/snapshot/restore.rb +25 -6
  134. data/lib/elasticsearch/api/actions/snapshot/status.rb +27 -6
  135. data/lib/elasticsearch/api/actions/snapshot/verify_repository.rb +25 -7
  136. data/lib/elasticsearch/api/actions/tasks/cancel.rb +30 -17
  137. data/lib/elasticsearch/api/actions/tasks/get.rb +27 -6
  138. data/lib/elasticsearch/api/actions/tasks/list.rb +35 -22
  139. data/lib/elasticsearch/api/actions/tasks/params_registry.rb +61 -0
  140. data/lib/elasticsearch/api/actions/termvectors.rb +65 -43
  141. data/lib/elasticsearch/api/actions/update.rb +50 -21
  142. data/lib/elasticsearch/api/actions/update_by_query.rb +49 -46
  143. data/lib/elasticsearch/api/actions/update_by_query_rethrottle.rb +46 -0
  144. data/lib/elasticsearch/api/namespace/cat.rb +17 -0
  145. data/lib/elasticsearch/api/namespace/cluster.rb +17 -0
  146. data/lib/elasticsearch/api/namespace/common.rb +19 -2
  147. data/lib/elasticsearch/api/namespace/indices.rb +17 -0
  148. data/lib/elasticsearch/api/namespace/ingest.rb +17 -0
  149. data/lib/elasticsearch/api/namespace/nodes.rb +17 -0
  150. data/lib/elasticsearch/api/namespace/remote.rb +17 -0
  151. data/lib/elasticsearch/api/namespace/snapshot.rb +17 -0
  152. data/lib/elasticsearch/api/namespace/tasks.rb +17 -0
  153. data/lib/elasticsearch/api/utils.rb +17 -0
  154. data/lib/elasticsearch/api/version.rb +18 -1
  155. data/lib/elasticsearch/api.rb +20 -0
  156. data/lib/elasticsearch-api.rb +17 -0
  157. data/spec/elasticsearch/api/actions/abort_benchmark_spec.rb +34 -0
  158. data/spec/elasticsearch/api/actions/benchmark_spec.rb +34 -0
  159. data/spec/elasticsearch/api/actions/bulk_spec.rb +139 -0
  160. data/spec/elasticsearch/api/actions/cat/aliases_spec.rb +35 -0
  161. data/spec/elasticsearch/api/actions/cat/allocation_spec.rb +35 -0
  162. data/spec/elasticsearch/api/actions/cat/count_spec.rb +35 -0
  163. data/spec/elasticsearch/api/actions/cat/fielddata_spec.rb +52 -0
  164. data/spec/elasticsearch/api/actions/cat/health_spec.rb +35 -0
  165. data/spec/elasticsearch/api/actions/cat/help_spec.rb +35 -0
  166. data/spec/elasticsearch/api/actions/cat/indices_spec.rb +35 -0
  167. data/spec/elasticsearch/api/actions/cat/master_spec.rb +35 -0
  168. data/spec/elasticsearch/api/actions/cat/nodeattrs_spec.rb +35 -0
  169. data/spec/elasticsearch/api/actions/cat/nodes_spec.rb +35 -0
  170. data/spec/elasticsearch/api/actions/cat/pending_tasks_spec.rb +35 -0
  171. data/spec/elasticsearch/api/actions/cat/plugins_spec.rb +35 -0
  172. data/spec/elasticsearch/api/actions/cat/recovery_spec.rb +35 -0
  173. data/spec/elasticsearch/api/actions/cat/repositories_spec.rb +35 -0
  174. data/spec/elasticsearch/api/actions/cat/segments_spec.rb +51 -0
  175. data/spec/elasticsearch/api/actions/cat/shards_spec.rb +35 -0
  176. data/spec/elasticsearch/api/actions/cat/snapshot_spec.rb +35 -0
  177. data/spec/elasticsearch/api/actions/cat/tasks_spec.rb +35 -0
  178. data/spec/elasticsearch/api/actions/cat/templates_spec.rb +35 -0
  179. data/spec/elasticsearch/api/actions/cat/thread_pool_spec.rb +35 -0
  180. data/spec/elasticsearch/api/actions/clear_scroll_spec.rb +50 -0
  181. data/spec/elasticsearch/api/actions/cluster/allocation_explain_spec.rb +35 -0
  182. data/spec/elasticsearch/api/actions/cluster/get_settings_spec.rb +35 -0
  183. data/spec/elasticsearch/api/actions/cluster/health_spec.rb +69 -0
  184. data/spec/elasticsearch/api/actions/cluster/pending_tasks_spec.rb +35 -0
  185. data/spec/elasticsearch/api/actions/cluster/put_settings_spec.rb +35 -0
  186. data/spec/elasticsearch/api/actions/cluster/remote_info_spec.rb +35 -0
  187. data/spec/elasticsearch/api/actions/cluster/reroute_spec.rb +52 -0
  188. data/spec/elasticsearch/api/actions/cluster/state_spec.rb +52 -0
  189. data/spec/elasticsearch/api/actions/cluster/stats_spec.rb +35 -0
  190. data/spec/elasticsearch/api/actions/count_spec.rb +66 -0
  191. data/spec/elasticsearch/api/actions/create_document_spec.rb +82 -0
  192. data/spec/elasticsearch/api/actions/delete_by_query_spec.rb +72 -0
  193. data/spec/elasticsearch/api/actions/delete_document_spec.rb +110 -0
  194. data/spec/elasticsearch/api/actions/delete_script_spec.rb +50 -0
  195. data/spec/elasticsearch/api/actions/exists_document_spec.rb +126 -0
  196. data/spec/elasticsearch/api/actions/explain_document_spec.rb +99 -0
  197. data/spec/elasticsearch/api/actions/field_caps_spec.rb +34 -0
  198. data/spec/elasticsearch/api/actions/get_document_source_spec.rb +98 -0
  199. data/spec/elasticsearch/api/actions/get_document_spec.rb +123 -0
  200. data/spec/elasticsearch/api/actions/get_script_spec.rb +49 -0
  201. data/{test/unit/hashie_test.rb → spec/elasticsearch/api/actions/hashie_spec.rb} +28 -17
  202. data/spec/elasticsearch/api/actions/index_document_spec.rb +145 -0
  203. data/spec/elasticsearch/api/actions/indices/analyze_spec.rb +73 -0
  204. data/spec/elasticsearch/api/actions/indices/clear_cache_spec.rb +84 -0
  205. data/spec/elasticsearch/api/actions/indices/close_spec.rb +85 -0
  206. data/spec/elasticsearch/api/actions/indices/create_spec.rb +85 -0
  207. data/spec/elasticsearch/api/actions/indices/delete_alias_spec.rb +83 -0
  208. data/spec/elasticsearch/api/actions/indices/delete_spec.rb +108 -0
  209. data/spec/elasticsearch/api/actions/indices/delete_template_spec.rb +86 -0
  210. data/spec/elasticsearch/api/actions/indices/exists_alias_spec.rb +108 -0
  211. data/spec/elasticsearch/api/actions/indices/exists_spec.rb +108 -0
  212. data/spec/elasticsearch/api/actions/indices/exists_template_spec.rb +93 -0
  213. data/spec/elasticsearch/api/actions/indices/exists_type_spec.rb +108 -0
  214. data/spec/elasticsearch/api/actions/indices/flush_spec.rb +91 -0
  215. data/spec/elasticsearch/api/actions/indices/flush_synced_spec.rb +90 -0
  216. data/spec/elasticsearch/api/actions/indices/forcemerge_spec.rb +35 -0
  217. data/spec/elasticsearch/api/actions/indices/freeze_spec.rb +68 -0
  218. data/spec/elasticsearch/api/actions/indices/get_alias_spec.rb +61 -0
  219. data/spec/elasticsearch/api/actions/indices/get_field_mapping_spec.rb +61 -0
  220. data/spec/elasticsearch/api/actions/indices/get_mapping_spec.rb +83 -0
  221. data/spec/elasticsearch/api/actions/indices/get_settings_spec.rb +72 -0
  222. data/spec/elasticsearch/api/actions/indices/get_spec.rb +65 -0
  223. data/spec/elasticsearch/api/actions/indices/open_spec.rb +65 -0
  224. data/spec/elasticsearch/api/actions/indices/put_alias_spec.rb +89 -0
  225. data/spec/elasticsearch/api/actions/indices/put_mapping_spec.rb +102 -0
  226. data/spec/elasticsearch/api/actions/indices/put_settings_spec.rb +108 -0
  227. data/spec/elasticsearch/api/actions/indices/put_template_spec.rb +107 -0
  228. data/spec/elasticsearch/api/actions/indices/recovery_spec.rb +35 -0
  229. data/spec/elasticsearch/api/actions/indices/refresh_spec.rb +91 -0
  230. data/spec/elasticsearch/api/actions/indices/rollover_spec.rb +58 -0
  231. data/spec/elasticsearch/api/actions/indices/segments_spec.rb +91 -0
  232. data/spec/elasticsearch/api/actions/indices/shard_stores_spec.rb +35 -0
  233. data/spec/elasticsearch/api/actions/indices/shrink_spec.rb +42 -0
  234. data/spec/elasticsearch/api/actions/indices/split_spec.rb +35 -0
  235. data/spec/elasticsearch/api/actions/indices/stats_spec.rb +125 -0
  236. data/spec/elasticsearch/api/actions/indices/unfreeze_spec.rb +68 -0
  237. data/spec/elasticsearch/api/actions/indices/update_aliases_spec.rb +67 -0
  238. data/spec/elasticsearch/api/actions/indices/upgrade_spec.rb +35 -0
  239. data/spec/elasticsearch/api/actions/indices/validate_query_spec.rb +128 -0
  240. data/spec/elasticsearch/api/actions/info_spec.rb +34 -0
  241. data/spec/elasticsearch/api/actions/ingest/delete_pipeline_spec.rb +60 -0
  242. data/spec/elasticsearch/api/actions/ingest/get_pipeline_spec.rb +50 -0
  243. data/spec/elasticsearch/api/actions/ingest/put_pipeline_spec.rb +60 -0
  244. data/spec/elasticsearch/api/actions/ingest/simulate_spec.rb +50 -0
  245. data/spec/elasticsearch/api/actions/json_builders_spec.rb +85 -0
  246. data/spec/elasticsearch/api/actions/mget_spec.rb +102 -0
  247. data/spec/elasticsearch/api/actions/msearch_spec.rb +169 -0
  248. data/spec/elasticsearch/api/actions/msearch_template_spec.rb +94 -0
  249. data/spec/elasticsearch/api/actions/mtermvectors_spec.rb +45 -0
  250. data/spec/elasticsearch/api/actions/nodes/hot_threads_spec.rb +61 -0
  251. data/spec/elasticsearch/api/actions/nodes/info_spec.rb +102 -0
  252. data/spec/elasticsearch/api/actions/nodes/reload_secure_settings_spec.rb +87 -0
  253. data/spec/elasticsearch/api/actions/nodes/shutdown_spec.rb +76 -0
  254. data/spec/elasticsearch/api/actions/nodes/stats_spec.rb +76 -0
  255. data/spec/elasticsearch/api/actions/ping_spec.rb +75 -0
  256. data/spec/elasticsearch/api/actions/put_script_spec.rb +49 -0
  257. data/spec/elasticsearch/api/actions/reindex_spec.rb +34 -0
  258. data/spec/elasticsearch/api/actions/remote/info_spec.rb +35 -0
  259. data/spec/elasticsearch/api/actions/render_search_template_spec.rb +34 -0
  260. data/spec/elasticsearch/api/actions/scoll_spec.rb +34 -0
  261. data/spec/elasticsearch/api/actions/search_shards_spec.rb +34 -0
  262. data/spec/elasticsearch/api/actions/search_spec.rb +148 -0
  263. data/spec/elasticsearch/api/actions/search_template_spec.rb +34 -0
  264. data/spec/elasticsearch/api/actions/snapshot/create_repository_spec.rb +51 -0
  265. data/spec/elasticsearch/api/actions/snapshot/create_spec.rb +51 -0
  266. data/spec/elasticsearch/api/actions/snapshot/delete_repository_spec.rb +50 -0
  267. data/spec/elasticsearch/api/actions/snapshot/delete_spec.rb +51 -0
  268. data/spec/elasticsearch/api/actions/snapshot/get_repository_spec.rb +35 -0
  269. data/spec/elasticsearch/api/actions/snapshot/get_spec.rb +51 -0
  270. data/spec/elasticsearch/api/actions/snapshot/restore_spec.rb +51 -0
  271. data/spec/elasticsearch/api/actions/snapshot/status_spec.rb +50 -0
  272. data/spec/elasticsearch/api/actions/snapshot/verify_repository_spec.rb +35 -0
  273. data/spec/elasticsearch/api/actions/tasks/cancel_spec.rb +50 -0
  274. data/spec/elasticsearch/api/actions/tasks/get_spec.rb +35 -0
  275. data/spec/elasticsearch/api/actions/tasks/list_spec.rb +50 -0
  276. data/spec/elasticsearch/api/actions/termvectors_spec.rb +67 -0
  277. data/spec/elasticsearch/api/actions/update_by_query_spec.rb +34 -0
  278. data/spec/elasticsearch/api/actions/update_document_spec.rb +125 -0
  279. data/spec/elasticsearch/api/api_spec.rb +43 -0
  280. data/spec/elasticsearch/api/client_spec.rb +46 -0
  281. data/spec/elasticsearch/api/utils_spec.rb +430 -0
  282. data/spec/spec_helper.rb +79 -0
  283. data/test/integration/yaml_test_runner.rb +91 -44
  284. data/test/test_helper.rb +62 -13
  285. data/utils/Gemfile +17 -0
  286. data/utils/Thorfile +17 -0
  287. data/utils/thor/generate_api.rb +17 -0
  288. data/utils/thor/generate_source.rb +23 -2
  289. data/utils/thor/lister.rb +17 -0
  290. data/utils/thor/templates/ruby/method.erb +17 -0
  291. data/utils/thor/templates/ruby/test.erb +17 -0
  292. data/utils/thor/templates/ruby/test_helper.rb +17 -1
  293. metadata +290 -323
  294. data/lib/elasticsearch/api/actions/count_percolate.rb +0 -78
  295. data/lib/elasticsearch/api/actions/delete_template.rb +0 -21
  296. data/lib/elasticsearch/api/actions/field_stats.rb +0 -32
  297. data/lib/elasticsearch/api/actions/get_template.rb +0 -27
  298. data/lib/elasticsearch/api/actions/indices/delete_mapping.rb +0 -26
  299. data/lib/elasticsearch/api/actions/indices/delete_warmer.rb +0 -32
  300. data/lib/elasticsearch/api/actions/indices/get_aliases.rb +0 -34
  301. data/lib/elasticsearch/api/actions/indices/get_warmer.rb +0 -60
  302. data/lib/elasticsearch/api/actions/indices/optimize.rb +0 -74
  303. data/lib/elasticsearch/api/actions/indices/put_warmer.rb +0 -64
  304. data/lib/elasticsearch/api/actions/indices/seal.rb +0 -24
  305. data/lib/elasticsearch/api/actions/indices/snapshot_index.rb +0 -43
  306. data/lib/elasticsearch/api/actions/indices/status.rb +0 -60
  307. data/lib/elasticsearch/api/actions/list_benchmarks.rb +0 -27
  308. data/lib/elasticsearch/api/actions/mlt.rb +0 -128
  309. data/lib/elasticsearch/api/actions/mpercolate.rb +0 -59
  310. data/lib/elasticsearch/api/actions/percolate.rb +0 -71
  311. data/lib/elasticsearch/api/actions/put_template.rb +0 -25
  312. data/lib/elasticsearch/api/actions/search_exists.rb +0 -59
  313. data/lib/elasticsearch/api/actions/suggest.rb +0 -46
  314. data/test/unit/abort_benchmark_test.rb +0 -26
  315. data/test/unit/api_test.rb +0 -28
  316. data/test/unit/benchmark_test.rb +0 -26
  317. data/test/unit/bulk_test.rb +0 -133
  318. data/test/unit/cat/aliases_test.rb +0 -26
  319. data/test/unit/cat/allocation_test.rb +0 -26
  320. data/test/unit/cat/count_test.rb +0 -26
  321. data/test/unit/cat/fielddata_test.rb +0 -38
  322. data/test/unit/cat/health_test.rb +0 -26
  323. data/test/unit/cat/help_test.rb +0 -26
  324. data/test/unit/cat/indices_test.rb +0 -26
  325. data/test/unit/cat/master_test.rb +0 -26
  326. data/test/unit/cat/nodeattrs_test.rb +0 -26
  327. data/test/unit/cat/nodes_test.rb +0 -26
  328. data/test/unit/cat/pending_tasks_test.rb +0 -26
  329. data/test/unit/cat/plugins_test.rb +0 -26
  330. data/test/unit/cat/recovery_test.rb +0 -26
  331. data/test/unit/cat/repositories_test.rb +0 -26
  332. data/test/unit/cat/segments_test.rb +0 -26
  333. data/test/unit/cat/shards_test.rb +0 -26
  334. data/test/unit/cat/snapshots_test.rb +0 -26
  335. data/test/unit/cat/tasks_test.rb +0 -26
  336. data/test/unit/cat/templates_test.rb +0 -26
  337. data/test/unit/cat/thread_pool_test.rb +0 -26
  338. data/test/unit/clear_scroll_test.rb +0 -38
  339. data/test/unit/client_test.rb +0 -31
  340. data/test/unit/cluster/allocation_explain_test.rb +0 -26
  341. data/test/unit/cluster/get_settings_test.rb +0 -26
  342. data/test/unit/cluster/health_test.rb +0 -47
  343. data/test/unit/cluster/pending_tasks_test.rb +0 -26
  344. data/test/unit/cluster/put_settings_test.rb +0 -26
  345. data/test/unit/cluster/remote_info_test.rb +0 -26
  346. data/test/unit/cluster/reroute_test.rb +0 -38
  347. data/test/unit/cluster/state_test.rb +0 -46
  348. data/test/unit/cluster/stats_test.rb +0 -26
  349. data/test/unit/count_percolate_test.rb +0 -26
  350. data/test/unit/count_test.rb +0 -46
  351. data/test/unit/create_document_test.rb +0 -56
  352. data/test/unit/delete_by_query_test.rb +0 -51
  353. data/test/unit/delete_document_test.rb +0 -85
  354. data/test/unit/delete_script_test.rb +0 -26
  355. data/test/unit/delete_template_test.rb +0 -26
  356. data/test/unit/exists_document_test.rb +0 -90
  357. data/test/unit/explain_document_test.rb +0 -73
  358. data/test/unit/field_caps_test.rb +0 -26
  359. data/test/unit/field_stats_test.rb +0 -26
  360. data/test/unit/get_document_source_test.rb +0 -71
  361. data/test/unit/get_document_test.rb +0 -85
  362. data/test/unit/get_script_test.rb +0 -26
  363. data/test/unit/get_template_test.rb +0 -41
  364. data/test/unit/index_document_test.rb +0 -92
  365. data/test/unit/indices/analyze_test.rb +0 -76
  366. data/test/unit/indices/clear_cache_test.rb +0 -54
  367. data/test/unit/indices/close_test.rb +0 -51
  368. data/test/unit/indices/create_test.rb +0 -51
  369. data/test/unit/indices/delete_alias_test.rb +0 -47
  370. data/test/unit/indices/delete_mapping_test.rb +0 -56
  371. data/test/unit/indices/delete_template_test.rb +0 -51
  372. data/test/unit/indices/delete_test.rb +0 -69
  373. data/test/unit/indices/delete_warmer_test.rb +0 -68
  374. data/test/unit/indices/exists_alias_test.rb +0 -73
  375. data/test/unit/indices/exists_template_test.rb +0 -59
  376. data/test/unit/indices/exists_test.rb +0 -71
  377. data/test/unit/indices/exists_type_test.rb +0 -73
  378. data/test/unit/indices/flush_synced_test.rb +0 -41
  379. data/test/unit/indices/flush_test.rb +0 -54
  380. data/test/unit/indices/forcemerge_test.rb +0 -26
  381. data/test/unit/indices/get_alias_test.rb +0 -44
  382. data/test/unit/indices/get_aliases_test.rb +0 -54
  383. data/test/unit/indices/get_field_mapping_test.rb +0 -44
  384. data/test/unit/indices/get_mapping_test.rb +0 -62
  385. data/test/unit/indices/get_settings_test.rb +0 -54
  386. data/test/unit/indices/get_template_test.rb +0 -43
  387. data/test/unit/indices/get_test.rb +0 -45
  388. data/test/unit/indices/get_warmer_test.rb +0 -44
  389. data/test/unit/indices/open_test.rb +0 -51
  390. data/test/unit/indices/optimize_test.rb +0 -54
  391. data/test/unit/indices/put_alias_test.rb +0 -59
  392. data/test/unit/indices/put_mapping_test.rb +0 -60
  393. data/test/unit/indices/put_settings_test.rb +0 -68
  394. data/test/unit/indices/put_template_test.rb +0 -57
  395. data/test/unit/indices/put_warmer_test.rb +0 -65
  396. data/test/unit/indices/recovery_test.rb +0 -26
  397. data/test/unit/indices/refresh_test.rb +0 -64
  398. data/test/unit/indices/rollover_test.rb +0 -38
  399. data/test/unit/indices/seal_test.rb +0 -25
  400. data/test/unit/indices/segments_test.rb +0 -64
  401. data/test/unit/indices/shard_stores_test.rb +0 -26
  402. data/test/unit/indices/shrink_test.rb +0 -33
  403. data/test/unit/indices/snapshot_index_test.rb +0 -64
  404. data/test/unit/indices/stats_test.rb +0 -76
  405. data/test/unit/indices/status_test.rb +0 -72
  406. data/test/unit/indices/update_aliases_test.rb +0 -42
  407. data/test/unit/indices/upgrade_test.rb +0 -26
  408. data/test/unit/indices/validate_query_test.rb +0 -84
  409. data/test/unit/info_test.rb +0 -26
  410. data/test/unit/ingest/delete_pipeline_test.rb +0 -41
  411. data/test/unit/ingest/get_pipeline_test.rb +0 -35
  412. data/test/unit/ingest/put_pipeline_test.rb +0 -46
  413. data/test/unit/ingest/simulate_test.rb +0 -35
  414. data/test/unit/json_builders_test.rb +0 -64
  415. data/test/unit/list_benchmarks_test.rb +0 -26
  416. data/test/unit/mget_test.rb +0 -79
  417. data/test/unit/mlt_test.rb +0 -89
  418. data/test/unit/mpercolate_test.rb +0 -51
  419. data/test/unit/msearch_template_test.rb +0 -60
  420. data/test/unit/msearch_test.rb +0 -129
  421. data/test/unit/mtermvectors_test.rb +0 -38
  422. data/test/unit/nodes/hot_threads_test.rb +0 -44
  423. data/test/unit/nodes/info_test.rb +0 -75
  424. data/test/unit/nodes/shutdown_test.rb +0 -45
  425. data/test/unit/nodes/stats_test.rb +0 -65
  426. data/test/unit/percolate_test.rb +0 -56
  427. data/test/unit/ping_test.rb +0 -53
  428. data/test/unit/put_script_test.rb +0 -26
  429. data/test/unit/put_template_test.rb +0 -26
  430. data/test/unit/reindex_test.rb +0 -26
  431. data/test/unit/remote/info_test.rb +0 -26
  432. data/test/unit/render_search_template_test.rb +0 -25
  433. data/test/unit/scroll_test.rb +0 -26
  434. data/test/unit/search_exists_test.rb +0 -26
  435. data/test/unit/search_shards_test.rb +0 -26
  436. data/test/unit/search_template_test.rb +0 -26
  437. data/test/unit/search_test.rb +0 -116
  438. data/test/unit/snapshot/create_repository_test.rb +0 -38
  439. data/test/unit/snapshot/create_test.rb +0 -38
  440. data/test/unit/snapshot/delete_repository_test.rb +0 -35
  441. data/test/unit/snapshot/delete_test.rb +0 -38
  442. data/test/unit/snapshot/get_repository_test.rb +0 -26
  443. data/test/unit/snapshot/get_test.rb +0 -38
  444. data/test/unit/snapshot/restore_test.rb +0 -38
  445. data/test/unit/snapshot/status_test.rb +0 -38
  446. data/test/unit/snapshot/verify_repository_test.rb +0 -26
  447. data/test/unit/suggest_test.rb +0 -64
  448. data/test/unit/tasks/cancel_test.rb +0 -38
  449. data/test/unit/tasks/get_test.rb +0 -26
  450. data/test/unit/tasks/list_test.rb +0 -38
  451. data/test/unit/termvectors_test.rb +0 -47
  452. data/test/unit/update_by_query_test.rb +0 -26
  453. data/test/unit/update_document_test.rb +0 -85
  454. data/test/unit/utils_test.rb +0 -310
@@ -0,0 +1,61 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ module Elasticsearch
19
+ module API
20
+ module Ingest
21
+ module Actions
22
+ module ParamsRegistry
23
+
24
+ extend self
25
+
26
+ # A Mapping of all the actions to their list of valid params.
27
+ #
28
+ # @since 6.1.1
29
+ PARAMS = {}
30
+
31
+ # Register an action with its list of valid params.
32
+ #
33
+ # @example Register the action.
34
+ # ParamsRegistry.register(:benchmark, [ :verbose ])
35
+ #
36
+ # @param [ Symbol ] action The action to register.
37
+ # @param [ Array[Symbol] ] valid_params The list of valid params.
38
+ #
39
+ # @since 6.1.1
40
+ def register(action, valid_params)
41
+ PARAMS[action.to_sym] = valid_params
42
+ end
43
+
44
+ # Get the list of valid params for a given action.
45
+ #
46
+ # @example Get the list of valid params.
47
+ # ParamsRegistry.get(:benchmark)
48
+ #
49
+ # @param [ Symbol ] action The action.
50
+ #
51
+ # @return [ Array<Symbol> ] The list of valid params for the action.
52
+ #
53
+ # @since 6.1.1
54
+ def get(action)
55
+ PARAMS.fetch(action, [])
56
+ end
57
+ end
58
+ end
59
+ end
60
+ end
61
+ end
@@ -0,0 +1,29 @@
1
+ module Elasticsearch
2
+ module API
3
+ module Ingest
4
+ module Actions
5
+
6
+ # Extracts structured fields out of a single text field within a document. You choose which field to extract
7
+ # matched fields from, as well as the grok pattern you expect will match.
8
+ #
9
+ #
10
+ # @see https://www.elastic.co/guide/en/elasticsearch/plugins/current/ingest.html
11
+ #
12
+ def processor_grok(arguments={})
13
+ method = Elasticsearch::API::HTTP_GET
14
+ path = "_ingest/processor/grok"
15
+ params = {}
16
+ body = nil
17
+
18
+ perform_request(method, path, params, body).body
19
+ end
20
+
21
+ # Register this action with its valid params when the module is loaded.
22
+ #
23
+ # @since 6.2.0
24
+ ParamsRegistry.register(:processor_grok, [
25
+ ].freeze)
26
+ end
27
+ end
28
+ end
29
+ end
@@ -1,3 +1,20 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
1
18
  module Elasticsearch
2
19
  module API
3
20
  module Ingest
@@ -15,17 +32,21 @@ module Elasticsearch
15
32
  def put_pipeline(arguments={})
16
33
  raise ArgumentError, "Required argument 'id' missing" unless arguments[:id]
17
34
  raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
18
- valid_params = [
19
- :master_timeout,
20
- :timeout ]
21
35
  method = 'PUT'
22
36
  path = Utils.__pathify "_ingest/pipeline", Utils.__escape(arguments[:id])
23
37
 
24
- params = Utils.__validate_and_extract_params arguments, valid_params
38
+ params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
25
39
  body = arguments[:body]
26
40
 
27
41
  perform_request(method, path, params, body).body
28
42
  end
43
+
44
+ # Register this action with its valid params when the module is loaded.
45
+ #
46
+ # @since 6.1.1
47
+ ParamsRegistry.register(:put_pipeline, [
48
+ :master_timeout,
49
+ :timeout ].freeze)
29
50
  end
30
51
  end
31
52
  end
@@ -1,3 +1,20 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
1
18
  module Elasticsearch
2
19
  module API
3
20
  module Ingest
@@ -14,15 +31,18 @@ module Elasticsearch
14
31
  #
15
32
  def simulate(arguments={})
16
33
  raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
17
- valid_params = [
18
- :verbose ]
19
34
  method = 'GET'
20
35
  path = Utils.__pathify "_ingest/pipeline", Utils.__escape(arguments[:id]), '_simulate'
21
- params = Utils.__validate_and_extract_params arguments, valid_params
36
+ params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
22
37
  body = arguments[:body]
23
38
 
24
39
  perform_request(method, path, params, body).body
25
40
  end
41
+
42
+ # Register this action with its valid params when the module is loaded.
43
+ #
44
+ # @since 6.1.1
45
+ ParamsRegistry.register(:simulate, [ :verbose ].freeze)
26
46
  end
27
47
  end
28
48
  end
@@ -1,3 +1,20 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
1
18
  module Elasticsearch
2
19
  module API
3
20
  module Actions
@@ -27,50 +44,45 @@ module Elasticsearch
27
44
  #
28
45
  # @option arguments [String] :index The name of the index
29
46
  # @option arguments [String] :type The type of the document
30
- # @option arguments [Hash] :body Document identifiers; can be either `docs` (containing full document information)
31
- # or `ids` (when index and type is provided in the URL (*Required*)
32
- # @option arguments [List] :fields A comma-separated list of fields to return in the response
33
- # @option arguments [String] :parent The ID of the parent document
34
- # @option arguments [String] :preference Specify the node or shard the operation should be performed on
35
- # (default: random)
47
+ # @option arguments [Hash] :body Document identifiers; can be either `docs` (containing full document information) or `ids` (when index and type is provided in the URL. (*Required*)
48
+ # @option arguments [List] :stored_fields A comma-separated list of stored fields to return in the response
49
+ # @option arguments [String] :preference Specify the node or shard the operation should be performed on (default: random)
36
50
  # @option arguments [Boolean] :realtime Specify whether to perform the operation in realtime or search mode
37
51
  # @option arguments [Boolean] :refresh Refresh the shard containing the document before performing the operation
38
52
  # @option arguments [String] :routing Specific routing value
39
- # @option arguments [String] :_source Specify whether the _source field should be returned,
40
- # or a list of fields to return
41
- # @option arguments [String] :_source_exclude A list of fields to exclude from the returned _source field
42
- # @option arguments [String] :_source_include A list of fields to extract and return from the _source field
43
- # @option arguments [List] :stored_fields A comma-separated list of stored fields to return in the response
53
+ # @option arguments [List] :_source True or false to return the _source field or not, or a list of fields to return
54
+ # @option arguments [List] :_source_excludes A list of fields to exclude from the returned _source field
55
+ # @option arguments [List] :_source_includes A list of fields to extract and return from the _source field
44
56
  #
45
57
  # @see http://elasticsearch.org/guide/reference/api/multi-get/
46
58
  #
47
59
  def mget(arguments={})
48
60
  raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
49
-
50
- valid_params = [
51
- :fields,
52
- :parent,
53
- :preference,
54
- :realtime,
55
- :refresh,
56
- :routing,
57
- :_source,
58
- :_source_include,
59
- :_source_exclude,
60
- :stored_fields ]
61
-
62
61
  method = HTTP_GET
63
62
  path = Utils.__pathify Utils.__escape(arguments[:index]),
64
63
  Utils.__escape(arguments[:type]),
65
64
  '_mget'
66
65
 
67
- params = Utils.__validate_and_extract_params arguments, valid_params
66
+ params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
68
67
  body = arguments[:body]
69
68
 
70
69
  params[:fields] = Utils.__listify(params[:fields]) if params[:fields]
71
70
 
72
71
  perform_request(method, path, params, body).body
73
72
  end
73
+
74
+ # Register this action with its valid params when the module is loaded.
75
+ #
76
+ # @since 6.1.1
77
+ ParamsRegistry.register(:mget, [
78
+ :stored_fields,
79
+ :preference,
80
+ :realtime,
81
+ :refresh,
82
+ :routing,
83
+ :_source,
84
+ :_source_excludes,
85
+ :_source_includes ].freeze)
74
86
  end
75
87
  end
76
88
  end
@@ -1,3 +1,20 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
1
18
  module Elasticsearch
2
19
  module API
3
20
  module Actions
@@ -22,7 +39,7 @@ module Elasticsearch
22
39
  # { query: { match_all: {} } },
23
40
  # { index: 'myindex', type: 'mytype' },
24
41
  # { query: { query_string: { query: '"Test 1"' } } },
25
- # { search_type: 'count' },
42
+ # { search_type: 'query_then_fetch' },
26
43
  # { aggregations: { published: { terms: { field: 'published' } } } }
27
44
  # ]
28
45
  #
@@ -32,21 +49,19 @@ module Elasticsearch
32
49
  # @option arguments [String] :search_type Search operation type (options: query_then_fetch, query_and_fetch, dfs_query_then_fetch, dfs_query_and_fetch)
33
50
  # @option arguments [Number] :max_concurrent_searches Controls the maximum number of concurrent searches the multi search api will execute
34
51
  # @option arguments [Boolean] :typed_keys Specify whether aggregation and suggester names should be prefixed by their respective types in the response
52
+ # @option arguments [Number] :pre_filter_shard_size A threshold that enforces a pre-filter roundtrip to prefilter search shards based on query rewriting if the number of shards the search request expands to exceeds the threshold. This filter roundtrip can limit the number of shards significantly if for instance a shard can not match any documents based on it's rewrite method ie. if date filters are mandatory to match but the shard bounds and the query are disjoint.
53
+ # @option arguments [Number] :max_concurrent_shard_requests The number of concurrent shard requests each sub search executes concurrently. This value should be used to limit the impact of the search on the cluster in order to limit the number of concurrent shard requests
54
+ # @option arguments [Boolean] :rest_total_hits_as_int Indicates whether hits.total should be rendered as an integer or an object in the rest search response
55
+ # @option arguments [Boolean] :ccs_minimize_roundtrips Indicates whether network round-trips should be minimized as part of cross-cluster search requests execution
35
56
  #
36
57
  # @see https://www.elastic.co/guide/en/elasticsearch/reference/5.x/search-multi-search.html
37
58
  #
38
59
  def msearch(arguments={})
39
60
  raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
40
-
41
- valid_params = [
42
- :search_type,
43
- :max_concurrent_searches,
44
- :typed_keys ]
45
-
46
61
  method = HTTP_GET
47
62
  path = Utils.__pathify( Utils.__listify(arguments[:index]), Utils.__listify(arguments[:type]), '_msearch' )
48
63
 
49
- params = Utils.__validate_and_extract_params arguments, valid_params
64
+ params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
50
65
  body = arguments[:body]
51
66
 
52
67
  case
@@ -71,8 +86,20 @@ module Elasticsearch
71
86
  payload = body
72
87
  end
73
88
 
74
- perform_request(method, path, params, payload).body
89
+ perform_request(method, path, params, payload, {"Content-Type" => "application/x-ndjson"}).body
75
90
  end
91
+
92
+ # Register this action with its valid params when the module is loaded.
93
+ #
94
+ # @since 6.1.1
95
+ ParamsRegistry.register(:msearch, [
96
+ :search_type,
97
+ :max_concurrent_searches,
98
+ :typed_keys,
99
+ :pre_filter_shard_size,
100
+ :max_concurrent_shard_requests,
101
+ :rest_total_hits_as_int,
102
+ :ccs_minimize_roundtrips ].freeze)
76
103
  end
77
104
  end
78
105
  end
@@ -1,3 +1,20 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
1
18
  module Elasticsearch
2
19
  module API
3
20
  module Actions
@@ -15,18 +32,20 @@ module Elasticsearch
15
32
  # @option arguments [List] :type A comma-separated list of document types to use as default
16
33
  # @option arguments [Hash] :body The request definitions (metadata-search request definition pairs), separated by newlines (*Required*)
17
34
  # @option arguments [String] :search_type Search operation type (options: query_then_fetch, query_and_fetch, dfs_query_then_fetch, dfs_query_and_fetch)
35
+ # @option arguments [Boolean] :typed_keys Specify whether aggregation and suggester names should be prefixed by their respective types in the response
36
+ # @option arguments [Number] :max_concurrent_searches Controls the maximum number of concurrent searches the multi search api will execute
37
+ # @option arguments [Boolean] :rest_total_hits_as_int Indicates whether hits.total should be rendered as an integer or an object in the rest search response
38
+ # @option arguments [Boolean] :ccs_minimize_roundtrips Indicates whether network round-trips should be minimized as part of cross-cluster search requests execution
18
39
  #
19
40
  # @see https://www.elastic.co/guide/en/elasticsearch/reference/current/multi-search-template.html
20
41
  #
21
42
  def msearch_template(arguments={})
22
43
  raise ArgumentError, "Required argument 'body' missing" unless arguments[:body]
23
-
24
- valid_params = [ :search_type ]
25
44
  method = HTTP_GET
26
45
  path = Utils.__pathify Utils.__listify(arguments[:index]),
27
46
  Utils.__listify(arguments[:type]),
28
47
  '_msearch/template'
29
- params = Utils.__validate_and_extract_params arguments, valid_params
48
+ params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
30
49
  body = arguments[:body]
31
50
 
32
51
  case
@@ -38,8 +57,18 @@ module Elasticsearch
38
57
  payload = body
39
58
  end
40
59
 
41
- perform_request(method, path, params, payload).body
60
+ perform_request(method, path, params, payload, {"Content-Type" => "application/x-ndjson"}).body
42
61
  end
62
+
63
+ # Register this action with its valid params when the module is loaded.
64
+ #
65
+ # @since 6.1.1
66
+ ParamsRegistry.register(:msearch_template, [
67
+ :search_type,
68
+ :typed_keys,
69
+ :max_concurrent_searches,
70
+ :rest_total_hits_as_int,
71
+ :ccs_minimize_roundtrips ].freeze)
43
72
  end
44
73
  end
45
74
  end
@@ -1,3 +1,20 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
1
18
  module Elasticsearch
2
19
  module API
3
20
  module Actions
@@ -9,25 +26,22 @@ module Elasticsearch
9
26
  #
10
27
  # subject.mtermvectors index: 'my-index', type: 'my-type', body: { ids: [1, 2, 3] }
11
28
  #
12
- # @option arguments [String] :index The name of the index
13
- # @option arguments [String] :type The type of the document
14
- # @option arguments [Hash] :body Document identifiers; can be either `docs` (containing full document information)
15
- # or `ids` (when index and type is provided in the URL (*Required*)
16
- # @option arguments [List] :ids A comma-separated list of documents ids (alternative to `:body`)
17
- # @option arguments [Boolean] :term_statistics Whether total term frequency and
18
- # document frequency should be returned.
19
- # @option arguments [Boolean] :field_statistics Whether document count, sum of document frequencies
20
- # and sum of total term frequencies should be returned.
21
- # @option arguments [List] :fields A comma-separated list of fields to return
22
- # @option arguments [Boolean] :offsets Whether term offsets should be returned
23
- # @option arguments [Boolean] :positions Whether term positions should be returned
24
- # @option arguments [Boolean] :payloads Whether term payloads should be returned
25
- # @option arguments [String] :preference Specify the node or shard the operation should be performed on
26
- # (default: random)
27
- # @option arguments [String] :realtime Specifies if requests are real-time as opposed to near-real-time
28
- # (default: true)
29
- # @option arguments [String] :routing Specific routing value
30
- # @option arguments [String] :parent Parent ID of documents
29
+ # @option arguments [String] :index The index in which the document resides.
30
+ # @option arguments [String] :type The type of the document.
31
+ # @option arguments [Hash] :body Define ids, documents, parameters or a list of parameters per document here. You must at least provide a list of document ids. See documentation.
32
+ # @option arguments [List] :ids A comma-separated list of documents ids. You must define ids as parameter or set "ids" or "docs" in the request body
33
+ # @option arguments [Boolean] :term_statistics Specifies if total term frequency and document frequency should be returned. Applies to all returned documents unless otherwise specified in body "params" or "docs".
34
+ # @option arguments [Boolean] :field_statistics Specifies if document count, sum of document frequencies and sum of total term frequencies should be returned. Applies to all returned documents unless otherwise specified in body "params" or "docs".
35
+ # @option arguments [List] :fields A comma-separated list of fields to return. Applies to all returned documents unless otherwise specified in body "params" or "docs".
36
+ # @option arguments [Boolean] :offsets Specifies if term offsets should be returned. Applies to all returned documents unless otherwise specified in body "params" or "docs".
37
+ # @option arguments [Boolean] :positions Specifies if term positions should be returned. Applies to all returned documents unless otherwise specified in body "params" or "docs".
38
+ # @option arguments [Boolean] :payloads Specifies if term payloads should be returned. Applies to all returned documents unless otherwise specified in body "params" or "docs".
39
+ # @option arguments [String] :preference Specify the node or shard the operation should be performed on (default: random) .Applies to all returned documents unless otherwise specified in body "params" or "docs".
40
+ # @option arguments [String] :routing Specific routing value. Applies to all returned documents unless otherwise specified in body "params" or "docs".
41
+ # @option arguments [String] :parent Parent id of documents. Applies to all returned documents unless otherwise specified in body "params" or "docs".
42
+ # @option arguments [Boolean] :realtime Specifies if requests are real-time as opposed to near-real-time (default: true).
43
+ # @option arguments [Number] :version Explicit version number for concurrency control
44
+ # @option arguments [String] :version_type Specific version type (options: internal, external, external_gte, force)
31
45
  #
32
46
  # @see http://www.elasticsearch.org/guide/en/elasticsearch/reference/master/docs-multi-termvectors.html
33
47
  #
@@ -35,19 +49,6 @@ module Elasticsearch
35
49
  # @see #termvector
36
50
  #
37
51
  def mtermvectors(arguments={})
38
- valid_params = [
39
- :ids,
40
- :term_statistics,
41
- :field_statistics,
42
- :fields,
43
- :offsets,
44
- :positions,
45
- :payloads,
46
- :preference,
47
- :realtime,
48
- :routing,
49
- :parent ]
50
-
51
52
  ids = arguments.delete(:ids)
52
53
 
53
54
  method = HTTP_GET
@@ -55,7 +56,7 @@ module Elasticsearch
55
56
  Utils.__escape(arguments[:type]),
56
57
  '_mtermvectors'
57
58
 
58
- params = Utils.__validate_and_extract_params arguments, valid_params
59
+ params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
59
60
 
60
61
  if ids
61
62
  body = { :ids => ids }
@@ -65,6 +66,24 @@ module Elasticsearch
65
66
 
66
67
  perform_request(method, path, params, body).body
67
68
  end
69
+
70
+ # Register this action with its valid params when the module is loaded.
71
+ #
72
+ # @since 6.1.1
73
+ ParamsRegistry.register(:mtermvectors, [
74
+ :ids,
75
+ :term_statistics,
76
+ :field_statistics,
77
+ :fields,
78
+ :offsets,
79
+ :positions,
80
+ :payloads,
81
+ :preference,
82
+ :routing,
83
+ :parent,
84
+ :realtime,
85
+ :version,
86
+ :version_type ].freeze)
68
87
  end
69
88
  end
70
89
  end
@@ -1,3 +1,20 @@
1
+ # Licensed to Elasticsearch B.V. under one or more contributor
2
+ # license agreements. See the NOTICE file distributed with
3
+ # this work for additional information regarding copyright
4
+ # ownership. Elasticsearch B.V. licenses this file to you under
5
+ # the Apache License, Version 2.0 (the "License"); you may
6
+ # not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
1
18
  module Elasticsearch
2
19
  module API
3
20
  module Nodes
@@ -13,12 +30,11 @@ module Elasticsearch
13
30
  #
14
31
  # client.nodes.hot_threads threads: 10
15
32
  #
16
- # @option arguments [List] :node_id A comma-separated list of node IDs or names to limit the returned information;
17
- # use `_local` to return information from the node you're connecting to,
18
- # leave empty to get information from all nodes
33
+ # @option arguments [List] :node_id A comma-separated list of node IDs or names to limit the returned information; use `_local` to return information from the node you're connecting to, leave empty to get information from all nodes
19
34
  # @option arguments [Time] :interval The interval for the second sampling of threads
20
35
  # @option arguments [Number] :snapshots Number of samples of thread stacktrace (default: 10)
21
36
  # @option arguments [Number] :threads Specify the number of threads to provide information for (default: 3)
37
+ # @option arguments [Boolean] :ignore_idle_threads Don't show threads that are in known-idle places, such as waiting on a socket select or pulling from an empty task queue (default: true)
22
38
  # @option arguments [String] :type The type to sample (default: cpu) (options: cpu, wait, block)
23
39
  # @option arguments [Time] :timeout Explicit operation timeout
24
40
  #
@@ -27,21 +43,25 @@ module Elasticsearch
27
43
  # @see http://www.elasticsearch.org/guide/reference/api/admin-cluster-nodes-hot-threads/
28
44
  #
29
45
  def hot_threads(arguments={})
30
- valid_params = [
31
- :interval,
32
- :snapshots,
33
- :threads,
34
- :type,
35
- :timeout ]
36
-
37
46
  method = HTTP_GET
38
47
  path = Utils.__pathify '_nodes', Utils.__listify(arguments[:node_id]), 'hot_threads'
39
48
 
40
- params = Utils.__validate_and_extract_params arguments, valid_params
49
+ params = Utils.__validate_and_extract_params arguments, ParamsRegistry.get(__method__)
41
50
  body = nil
42
51
 
43
52
  perform_request(method, path, params, body).body
44
53
  end
54
+
55
+ # Register this action with its valid params when the module is loaded.
56
+ #
57
+ # @since 6.1.1
58
+ ParamsRegistry.register(:hot_threads, [
59
+ :interval,
60
+ :snapshots,
61
+ :threads,
62
+ :ignore_idle_threads,
63
+ :type,
64
+ :timeout ].freeze)
45
65
  end
46
66
  end
47
67
  end