ClusterAdminClient.java 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721
  1. /*
  2. * Licensed to Elasticsearch under one or more contributor
  3. * license agreements. See the NOTICE file distributed with
  4. * this work for additional information regarding copyright
  5. * ownership. Elasticsearch licenses this file to you under
  6. * the Apache License, Version 2.0 (the "License"); you may
  7. * not use this file except in compliance with the License.
  8. * You may obtain a copy of the License at
  9. *
  10. * http://www.apache.org/licenses/LICENSE-2.0
  11. *
  12. * Unless required by applicable law or agreed to in writing,
  13. * software distributed under the License is distributed on an
  14. * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  15. * KIND, either express or implied. See the License for the
  16. * specific language governing permissions and limitations
  17. * under the License.
  18. */
  19. package org.elasticsearch.client;
  20. import org.elasticsearch.action.ActionFuture;
  21. import org.elasticsearch.action.ActionListener;
  22. import org.elasticsearch.action.admin.cluster.allocation.ClusterAllocationExplainRequest;
  23. import org.elasticsearch.action.admin.cluster.allocation.ClusterAllocationExplainRequestBuilder;
  24. import org.elasticsearch.action.admin.cluster.allocation.ClusterAllocationExplainResponse;
  25. import org.elasticsearch.action.admin.cluster.health.ClusterHealthRequest;
  26. import org.elasticsearch.action.admin.cluster.health.ClusterHealthRequestBuilder;
  27. import org.elasticsearch.action.admin.cluster.health.ClusterHealthResponse;
  28. import org.elasticsearch.action.admin.cluster.node.hotthreads.NodesHotThreadsRequest;
  29. import org.elasticsearch.action.admin.cluster.node.hotthreads.NodesHotThreadsRequestBuilder;
  30. import org.elasticsearch.action.admin.cluster.node.hotthreads.NodesHotThreadsResponse;
  31. import org.elasticsearch.action.admin.cluster.node.info.NodesInfoRequest;
  32. import org.elasticsearch.action.admin.cluster.node.info.NodesInfoRequestBuilder;
  33. import org.elasticsearch.action.admin.cluster.node.info.NodesInfoResponse;
  34. import org.elasticsearch.action.admin.cluster.node.reload.NodesReloadSecureSettingsRequestBuilder;
  35. import org.elasticsearch.action.admin.cluster.node.stats.NodesStatsRequest;
  36. import org.elasticsearch.action.admin.cluster.node.stats.NodesStatsRequestBuilder;
  37. import org.elasticsearch.action.admin.cluster.node.stats.NodesStatsResponse;
  38. import org.elasticsearch.action.admin.cluster.node.tasks.cancel.CancelTasksRequest;
  39. import org.elasticsearch.action.admin.cluster.node.tasks.cancel.CancelTasksRequestBuilder;
  40. import org.elasticsearch.action.admin.cluster.node.tasks.cancel.CancelTasksResponse;
  41. import org.elasticsearch.action.admin.cluster.node.tasks.get.GetTaskRequest;
  42. import org.elasticsearch.action.admin.cluster.node.tasks.get.GetTaskRequestBuilder;
  43. import org.elasticsearch.action.admin.cluster.node.tasks.get.GetTaskResponse;
  44. import org.elasticsearch.action.admin.cluster.node.tasks.list.ListTasksRequest;
  45. import org.elasticsearch.action.admin.cluster.node.tasks.list.ListTasksRequestBuilder;
  46. import org.elasticsearch.action.admin.cluster.node.tasks.list.ListTasksResponse;
  47. import org.elasticsearch.action.admin.cluster.node.usage.NodesUsageRequest;
  48. import org.elasticsearch.action.admin.cluster.node.usage.NodesUsageRequestBuilder;
  49. import org.elasticsearch.action.admin.cluster.node.usage.NodesUsageResponse;
  50. import org.elasticsearch.action.admin.cluster.repositories.cleanup.CleanupRepositoryRequest;
  51. import org.elasticsearch.action.admin.cluster.repositories.cleanup.CleanupRepositoryRequestBuilder;
  52. import org.elasticsearch.action.admin.cluster.repositories.cleanup.CleanupRepositoryResponse;
  53. import org.elasticsearch.action.admin.cluster.repositories.delete.DeleteRepositoryRequest;
  54. import org.elasticsearch.action.admin.cluster.repositories.delete.DeleteRepositoryRequestBuilder;
  55. import org.elasticsearch.action.admin.cluster.repositories.get.GetRepositoriesRequest;
  56. import org.elasticsearch.action.admin.cluster.repositories.get.GetRepositoriesRequestBuilder;
  57. import org.elasticsearch.action.admin.cluster.repositories.get.GetRepositoriesResponse;
  58. import org.elasticsearch.action.admin.cluster.repositories.put.PutRepositoryRequest;
  59. import org.elasticsearch.action.admin.cluster.repositories.put.PutRepositoryRequestBuilder;
  60. import org.elasticsearch.action.admin.cluster.repositories.verify.VerifyRepositoryRequest;
  61. import org.elasticsearch.action.admin.cluster.repositories.verify.VerifyRepositoryRequestBuilder;
  62. import org.elasticsearch.action.admin.cluster.repositories.verify.VerifyRepositoryResponse;
  63. import org.elasticsearch.action.admin.cluster.reroute.ClusterRerouteRequest;
  64. import org.elasticsearch.action.admin.cluster.reroute.ClusterRerouteRequestBuilder;
  65. import org.elasticsearch.action.admin.cluster.reroute.ClusterRerouteResponse;
  66. import org.elasticsearch.action.admin.cluster.settings.ClusterUpdateSettingsRequest;
  67. import org.elasticsearch.action.admin.cluster.settings.ClusterUpdateSettingsRequestBuilder;
  68. import org.elasticsearch.action.admin.cluster.settings.ClusterUpdateSettingsResponse;
  69. import org.elasticsearch.action.admin.cluster.shards.ClusterSearchShardsRequest;
  70. import org.elasticsearch.action.admin.cluster.shards.ClusterSearchShardsRequestBuilder;
  71. import org.elasticsearch.action.admin.cluster.shards.ClusterSearchShardsResponse;
  72. import org.elasticsearch.action.admin.cluster.snapshots.create.CreateSnapshotRequest;
  73. import org.elasticsearch.action.admin.cluster.snapshots.create.CreateSnapshotRequestBuilder;
  74. import org.elasticsearch.action.admin.cluster.snapshots.create.CreateSnapshotResponse;
  75. import org.elasticsearch.action.admin.cluster.snapshots.delete.DeleteSnapshotRequest;
  76. import org.elasticsearch.action.admin.cluster.snapshots.delete.DeleteSnapshotRequestBuilder;
  77. import org.elasticsearch.action.admin.cluster.snapshots.get.GetSnapshotsRequest;
  78. import org.elasticsearch.action.admin.cluster.snapshots.get.GetSnapshotsRequestBuilder;
  79. import org.elasticsearch.action.admin.cluster.snapshots.get.GetSnapshotsResponse;
  80. import org.elasticsearch.action.admin.cluster.snapshots.restore.RestoreSnapshotRequest;
  81. import org.elasticsearch.action.admin.cluster.snapshots.restore.RestoreSnapshotRequestBuilder;
  82. import org.elasticsearch.action.admin.cluster.snapshots.restore.RestoreSnapshotResponse;
  83. import org.elasticsearch.action.admin.cluster.snapshots.status.SnapshotsStatusRequest;
  84. import org.elasticsearch.action.admin.cluster.snapshots.status.SnapshotsStatusRequestBuilder;
  85. import org.elasticsearch.action.admin.cluster.snapshots.status.SnapshotsStatusResponse;
  86. import org.elasticsearch.action.admin.cluster.state.ClusterStateRequest;
  87. import org.elasticsearch.action.admin.cluster.state.ClusterStateRequestBuilder;
  88. import org.elasticsearch.action.admin.cluster.state.ClusterStateResponse;
  89. import org.elasticsearch.action.admin.cluster.stats.ClusterStatsRequest;
  90. import org.elasticsearch.action.admin.cluster.stats.ClusterStatsRequestBuilder;
  91. import org.elasticsearch.action.admin.cluster.stats.ClusterStatsResponse;
  92. import org.elasticsearch.action.admin.cluster.storedscripts.DeleteStoredScriptRequest;
  93. import org.elasticsearch.action.admin.cluster.storedscripts.DeleteStoredScriptRequestBuilder;
  94. import org.elasticsearch.action.admin.cluster.storedscripts.GetStoredScriptRequest;
  95. import org.elasticsearch.action.admin.cluster.storedscripts.GetStoredScriptRequestBuilder;
  96. import org.elasticsearch.action.admin.cluster.storedscripts.GetStoredScriptResponse;
  97. import org.elasticsearch.action.admin.cluster.storedscripts.PutStoredScriptRequest;
  98. import org.elasticsearch.action.admin.cluster.storedscripts.PutStoredScriptRequestBuilder;
  99. import org.elasticsearch.action.admin.cluster.tasks.PendingClusterTasksRequest;
  100. import org.elasticsearch.action.admin.cluster.tasks.PendingClusterTasksRequestBuilder;
  101. import org.elasticsearch.action.admin.cluster.tasks.PendingClusterTasksResponse;
  102. import org.elasticsearch.action.ingest.DeletePipelineRequest;
  103. import org.elasticsearch.action.ingest.DeletePipelineRequestBuilder;
  104. import org.elasticsearch.action.ingest.GetPipelineRequest;
  105. import org.elasticsearch.action.ingest.GetPipelineRequestBuilder;
  106. import org.elasticsearch.action.ingest.GetPipelineResponse;
  107. import org.elasticsearch.action.ingest.PutPipelineRequest;
  108. import org.elasticsearch.action.ingest.PutPipelineRequestBuilder;
  109. import org.elasticsearch.action.ingest.SimulatePipelineRequest;
  110. import org.elasticsearch.action.ingest.SimulatePipelineRequestBuilder;
  111. import org.elasticsearch.action.ingest.SimulatePipelineResponse;
  112. import org.elasticsearch.action.support.master.AcknowledgedResponse;
  113. import org.elasticsearch.common.bytes.BytesReference;
  114. import org.elasticsearch.common.xcontent.XContentType;
  115. import org.elasticsearch.tasks.TaskId;
  116. /**
  117. * Administrative actions/operations against indices.
  118. *
  119. * @see AdminClient#cluster()
  120. */
  121. public interface ClusterAdminClient extends ElasticsearchClient {
  122. /**
  123. * The health of the cluster.
  124. *
  125. * @param request The cluster state request
  126. * @return The result future
  127. * @see Requests#clusterHealthRequest(String...)
  128. */
  129. ActionFuture<ClusterHealthResponse> health(ClusterHealthRequest request);
  130. /**
  131. * The health of the cluster.
  132. *
  133. * @param request The cluster state request
  134. * @param listener A listener to be notified with a result
  135. * @see Requests#clusterHealthRequest(String...)
  136. */
  137. void health(ClusterHealthRequest request, ActionListener<ClusterHealthResponse> listener);
  138. /**
  139. * The health of the cluster.
  140. */
  141. ClusterHealthRequestBuilder prepareHealth(String... indices);
  142. /**
  143. * The state of the cluster.
  144. *
  145. * @param request The cluster state request.
  146. * @return The result future
  147. * @see Requests#clusterStateRequest()
  148. */
  149. ActionFuture<ClusterStateResponse> state(ClusterStateRequest request);
  150. /**
  151. * The state of the cluster.
  152. *
  153. * @param request The cluster state request.
  154. * @param listener A listener to be notified with a result
  155. * @see Requests#clusterStateRequest()
  156. */
  157. void state(ClusterStateRequest request, ActionListener<ClusterStateResponse> listener);
  158. /**
  159. * The state of the cluster.
  160. */
  161. ClusterStateRequestBuilder prepareState();
  162. /**
  163. * Updates settings in the cluster.
  164. */
  165. ActionFuture<ClusterUpdateSettingsResponse> updateSettings(ClusterUpdateSettingsRequest request);
  166. /**
  167. * Update settings in the cluster.
  168. */
  169. void updateSettings(ClusterUpdateSettingsRequest request, ActionListener<ClusterUpdateSettingsResponse> listener);
  170. /**
  171. * Update settings in the cluster.
  172. */
  173. ClusterUpdateSettingsRequestBuilder prepareUpdateSettings();
  174. /**
  175. * Re initialize each cluster node and pass them the secret store password.
  176. */
  177. NodesReloadSecureSettingsRequestBuilder prepareReloadSecureSettings();
  178. /**
  179. * Reroutes allocation of shards. Advance API.
  180. */
  181. ActionFuture<ClusterRerouteResponse> reroute(ClusterRerouteRequest request);
  182. /**
  183. * Reroutes allocation of shards. Advance API.
  184. */
  185. void reroute(ClusterRerouteRequest request, ActionListener<ClusterRerouteResponse> listener);
  186. /**
  187. * Update settings in the cluster.
  188. */
  189. ClusterRerouteRequestBuilder prepareReroute();
  190. /**
  191. * Nodes info of the cluster.
  192. *
  193. * @param request The nodes info request
  194. * @return The result future
  195. * @see org.elasticsearch.client.Requests#nodesInfoRequest(String...)
  196. */
  197. ActionFuture<NodesInfoResponse> nodesInfo(NodesInfoRequest request);
  198. /**
  199. * Nodes info of the cluster.
  200. *
  201. * @param request The nodes info request
  202. * @param listener A listener to be notified with a result
  203. * @see org.elasticsearch.client.Requests#nodesInfoRequest(String...)
  204. */
  205. void nodesInfo(NodesInfoRequest request, ActionListener<NodesInfoResponse> listener);
  206. /**
  207. * Nodes info of the cluster.
  208. */
  209. NodesInfoRequestBuilder prepareNodesInfo(String... nodesIds);
  210. /**
  211. * Cluster wide aggregated stats.
  212. *
  213. * @param request The cluster stats request
  214. * @return The result future
  215. * @see org.elasticsearch.client.Requests#clusterStatsRequest
  216. */
  217. ActionFuture<ClusterStatsResponse> clusterStats(ClusterStatsRequest request);
  218. /**
  219. * Cluster wide aggregated stats
  220. *
  221. * @param request The cluster stats request
  222. * @param listener A listener to be notified with a result
  223. * @see org.elasticsearch.client.Requests#clusterStatsRequest()
  224. */
  225. void clusterStats(ClusterStatsRequest request, ActionListener<ClusterStatsResponse> listener);
  226. ClusterStatsRequestBuilder prepareClusterStats();
  227. /**
  228. * Nodes stats of the cluster.
  229. *
  230. * @param request The nodes stats request
  231. * @return The result future
  232. * @see org.elasticsearch.client.Requests#nodesStatsRequest(String...)
  233. */
  234. ActionFuture<NodesStatsResponse> nodesStats(NodesStatsRequest request);
  235. /**
  236. * Nodes stats of the cluster.
  237. *
  238. * @param request The nodes info request
  239. * @param listener A listener to be notified with a result
  240. * @see org.elasticsearch.client.Requests#nodesStatsRequest(String...)
  241. */
  242. void nodesStats(NodesStatsRequest request, ActionListener<NodesStatsResponse> listener);
  243. /**
  244. * Nodes stats of the cluster.
  245. */
  246. NodesStatsRequestBuilder prepareNodesStats(String... nodesIds);
  247. /**
  248. * Returns top N hot-threads samples per node. The hot-threads are only
  249. * sampled for the node ids specified in the request. Nodes usage of the
  250. * cluster.
  251. *
  252. * @param request
  253. * The nodes usage request
  254. * @return The result future
  255. * @see org.elasticsearch.client.Requests#nodesUsageRequest(String...)
  256. */
  257. ActionFuture<NodesUsageResponse> nodesUsage(NodesUsageRequest request);
  258. /**
  259. * Nodes usage of the cluster.
  260. *
  261. * @param request
  262. * The nodes usage request
  263. * @param listener
  264. * A listener to be notified with a result
  265. * @see org.elasticsearch.client.Requests#nodesUsageRequest(String...)
  266. */
  267. void nodesUsage(NodesUsageRequest request, ActionListener<NodesUsageResponse> listener);
  268. /**
  269. * Nodes usage of the cluster.
  270. */
  271. NodesUsageRequestBuilder prepareNodesUsage(String... nodesIds);
  272. /**
  273. * Returns top N hot-threads samples per node. The hot-threads are only
  274. * sampled for the node ids specified in the request.
  275. *
  276. */
  277. ActionFuture<NodesHotThreadsResponse> nodesHotThreads(NodesHotThreadsRequest request);
  278. /**
  279. * Returns top N hot-threads samples per node. The hot-threads are only sampled
  280. * for the node ids specified in the request.
  281. */
  282. void nodesHotThreads(NodesHotThreadsRequest request, ActionListener<NodesHotThreadsResponse> listener);
  283. /**
  284. * Returns a request builder to fetch top N hot-threads samples per node. The hot-threads are only sampled
  285. * for the node ids provided. Note: Use {@code *} to fetch samples for all nodes
  286. */
  287. NodesHotThreadsRequestBuilder prepareNodesHotThreads(String... nodesIds);
  288. /**
  289. * List tasks
  290. *
  291. * @param request The nodes tasks request
  292. * @return The result future
  293. * @see org.elasticsearch.client.Requests#listTasksRequest()
  294. */
  295. ActionFuture<ListTasksResponse> listTasks(ListTasksRequest request);
  296. /**
  297. * List active tasks
  298. *
  299. * @param request The nodes tasks request
  300. * @param listener A listener to be notified with a result
  301. * @see org.elasticsearch.client.Requests#listTasksRequest()
  302. */
  303. void listTasks(ListTasksRequest request, ActionListener<ListTasksResponse> listener);
  304. /**
  305. * List active tasks
  306. */
  307. ListTasksRequestBuilder prepareListTasks(String... nodesIds);
  308. /**
  309. * Get a task.
  310. *
  311. * @param request the request
  312. * @return the result future
  313. * @see org.elasticsearch.client.Requests#getTaskRequest()
  314. */
  315. ActionFuture<GetTaskResponse> getTask(GetTaskRequest request);
  316. /**
  317. * Get a task.
  318. *
  319. * @param request the request
  320. * @param listener A listener to be notified with the result
  321. * @see org.elasticsearch.client.Requests#getTaskRequest()
  322. */
  323. void getTask(GetTaskRequest request, ActionListener<GetTaskResponse> listener);
  324. /**
  325. * Fetch a task by id.
  326. */
  327. GetTaskRequestBuilder prepareGetTask(String taskId);
  328. /**
  329. * Fetch a task by id.
  330. */
  331. GetTaskRequestBuilder prepareGetTask(TaskId taskId);
  332. /**
  333. * Cancel tasks
  334. *
  335. * @param request The nodes tasks request
  336. * @return The result future
  337. * @see org.elasticsearch.client.Requests#cancelTasksRequest()
  338. */
  339. ActionFuture<CancelTasksResponse> cancelTasks(CancelTasksRequest request);
  340. /**
  341. * Cancel active tasks
  342. *
  343. * @param request The nodes tasks request
  344. * @param listener A listener to be notified with a result
  345. * @see org.elasticsearch.client.Requests#cancelTasksRequest()
  346. */
  347. void cancelTasks(CancelTasksRequest request, ActionListener<CancelTasksResponse> listener);
  348. /**
  349. * Cancel active tasks
  350. */
  351. CancelTasksRequestBuilder prepareCancelTasks(String... nodesIds);
  352. /**
  353. * Returns list of shards the given search would be executed on.
  354. */
  355. ActionFuture<ClusterSearchShardsResponse> searchShards(ClusterSearchShardsRequest request);
  356. /**
  357. * Returns list of shards the given search would be executed on.
  358. */
  359. void searchShards(ClusterSearchShardsRequest request, ActionListener<ClusterSearchShardsResponse> listener);
  360. /**
  361. * Returns list of shards the given search would be executed on.
  362. */
  363. ClusterSearchShardsRequestBuilder prepareSearchShards();
  364. /**
  365. * Returns list of shards the given search would be executed on.
  366. */
  367. ClusterSearchShardsRequestBuilder prepareSearchShards(String... indices);
  368. /**
  369. * Registers a snapshot repository.
  370. */
  371. ActionFuture<AcknowledgedResponse> putRepository(PutRepositoryRequest request);
  372. /**
  373. * Registers a snapshot repository.
  374. */
  375. void putRepository(PutRepositoryRequest request, ActionListener<AcknowledgedResponse> listener);
  376. /**
  377. * Registers a snapshot repository.
  378. */
  379. PutRepositoryRequestBuilder preparePutRepository(String name);
  380. /**
  381. * Unregisters a repository.
  382. */
  383. ActionFuture<AcknowledgedResponse> deleteRepository(DeleteRepositoryRequest request);
  384. /**
  385. * Unregisters a repository.
  386. */
  387. void deleteRepository(DeleteRepositoryRequest request, ActionListener<AcknowledgedResponse> listener);
  388. /**
  389. * Unregisters a repository.
  390. */
  391. DeleteRepositoryRequestBuilder prepareDeleteRepository(String name);
  392. /**
  393. * Gets repositories.
  394. */
  395. ActionFuture<GetRepositoriesResponse> getRepositories(GetRepositoriesRequest request);
  396. /**
  397. * Gets repositories.
  398. */
  399. void getRepositories(GetRepositoriesRequest request, ActionListener<GetRepositoriesResponse> listener);
  400. /**
  401. * Gets repositories.
  402. */
  403. GetRepositoriesRequestBuilder prepareGetRepositories(String... name);
  404. /**
  405. * Cleans up repository.
  406. */
  407. CleanupRepositoryRequestBuilder prepareCleanupRepository(String repository);
  408. /**
  409. * Cleans up repository.
  410. */
  411. ActionFuture<CleanupRepositoryResponse> cleanupRepository(CleanupRepositoryRequest repository);
  412. /**
  413. * Cleans up repository.
  414. */
  415. void cleanupRepository(CleanupRepositoryRequest repository, ActionListener<CleanupRepositoryResponse> listener);
  416. /**
  417. * Verifies a repository.
  418. */
  419. ActionFuture<VerifyRepositoryResponse> verifyRepository(VerifyRepositoryRequest request);
  420. /**
  421. * Verifies a repository.
  422. */
  423. void verifyRepository(VerifyRepositoryRequest request, ActionListener<VerifyRepositoryResponse> listener);
  424. /**
  425. * Verifies a repository.
  426. */
  427. VerifyRepositoryRequestBuilder prepareVerifyRepository(String name);
  428. /**
  429. * Creates a new snapshot.
  430. */
  431. ActionFuture<CreateSnapshotResponse> createSnapshot(CreateSnapshotRequest request);
  432. /**
  433. * Creates a new snapshot.
  434. */
  435. void createSnapshot(CreateSnapshotRequest request, ActionListener<CreateSnapshotResponse> listener);
  436. /**
  437. * Creates a new snapshot.
  438. */
  439. CreateSnapshotRequestBuilder prepareCreateSnapshot(String repository, String name);
  440. /**
  441. * Get snapshots.
  442. */
  443. ActionFuture<GetSnapshotsResponse> getSnapshots(GetSnapshotsRequest request);
  444. /**
  445. * Get snapshots.
  446. */
  447. void getSnapshots(GetSnapshotsRequest request, ActionListener<GetSnapshotsResponse> listener);
  448. /**
  449. * Get snapshots.
  450. */
  451. GetSnapshotsRequestBuilder prepareGetSnapshots(String... repository);
  452. /**
  453. * Delete snapshot.
  454. */
  455. ActionFuture<AcknowledgedResponse> deleteSnapshot(DeleteSnapshotRequest request);
  456. /**
  457. * Delete snapshot.
  458. */
  459. void deleteSnapshot(DeleteSnapshotRequest request, ActionListener<AcknowledgedResponse> listener);
  460. /**
  461. * Delete snapshot.
  462. */
  463. DeleteSnapshotRequestBuilder prepareDeleteSnapshot(String repository, String... snapshot);
  464. /**
  465. * Restores a snapshot.
  466. */
  467. ActionFuture<RestoreSnapshotResponse> restoreSnapshot(RestoreSnapshotRequest request);
  468. /**
  469. * Restores a snapshot.
  470. */
  471. void restoreSnapshot(RestoreSnapshotRequest request, ActionListener<RestoreSnapshotResponse> listener);
  472. /**
  473. * Restores a snapshot.
  474. */
  475. RestoreSnapshotRequestBuilder prepareRestoreSnapshot(String repository, String snapshot);
  476. /**
  477. * Returns a list of the pending cluster tasks, that are scheduled to be executed. This includes operations
  478. * that update the cluster state (for example, a create index operation)
  479. */
  480. void pendingClusterTasks(PendingClusterTasksRequest request, ActionListener<PendingClusterTasksResponse> listener);
  481. /**
  482. * Returns a list of the pending cluster tasks, that are scheduled to be executed. This includes operations
  483. * that update the cluster state (for example, a create index operation)
  484. */
  485. ActionFuture<PendingClusterTasksResponse> pendingClusterTasks(PendingClusterTasksRequest request);
  486. /**
  487. * Returns a list of the pending cluster tasks, that are scheduled to be executed. This includes operations
  488. * that update the cluster state (for example, a create index operation)
  489. */
  490. PendingClusterTasksRequestBuilder preparePendingClusterTasks();
  491. /**
  492. * Get snapshot status.
  493. */
  494. ActionFuture<SnapshotsStatusResponse> snapshotsStatus(SnapshotsStatusRequest request);
  495. /**
  496. * Get snapshot status.
  497. */
  498. void snapshotsStatus(SnapshotsStatusRequest request, ActionListener<SnapshotsStatusResponse> listener);
  499. /**
  500. * Get snapshot status.
  501. */
  502. SnapshotsStatusRequestBuilder prepareSnapshotStatus(String repository);
  503. /**
  504. * Get snapshot status.
  505. */
  506. SnapshotsStatusRequestBuilder prepareSnapshotStatus();
  507. /**
  508. * Stores an ingest pipeline
  509. */
  510. void putPipeline(PutPipelineRequest request, ActionListener<AcknowledgedResponse> listener);
  511. /**
  512. * Stores an ingest pipeline
  513. */
  514. ActionFuture<AcknowledgedResponse> putPipeline(PutPipelineRequest request);
  515. /**
  516. * Stores an ingest pipeline
  517. */
  518. PutPipelineRequestBuilder preparePutPipeline(String id, BytesReference source, XContentType xContentType);
  519. /**
  520. * Deletes a stored ingest pipeline
  521. */
  522. void deletePipeline(DeletePipelineRequest request, ActionListener<AcknowledgedResponse> listener);
  523. /**
  524. * Deletes a stored ingest pipeline
  525. */
  526. ActionFuture<AcknowledgedResponse> deletePipeline(DeletePipelineRequest request);
  527. /**
  528. * Deletes a stored ingest pipeline
  529. */
  530. DeletePipelineRequestBuilder prepareDeletePipeline();
  531. /**
  532. * Deletes a stored ingest pipeline
  533. */
  534. DeletePipelineRequestBuilder prepareDeletePipeline(String id);
  535. /**
  536. * Returns a stored ingest pipeline
  537. */
  538. void getPipeline(GetPipelineRequest request, ActionListener<GetPipelineResponse> listener);
  539. /**
  540. * Returns a stored ingest pipeline
  541. */
  542. ActionFuture<GetPipelineResponse> getPipeline(GetPipelineRequest request);
  543. /**
  544. * Returns a stored ingest pipeline
  545. */
  546. GetPipelineRequestBuilder prepareGetPipeline(String... ids);
  547. /**
  548. * Simulates an ingest pipeline
  549. */
  550. void simulatePipeline(SimulatePipelineRequest request, ActionListener<SimulatePipelineResponse> listener);
  551. /**
  552. * Simulates an ingest pipeline
  553. */
  554. ActionFuture<SimulatePipelineResponse> simulatePipeline(SimulatePipelineRequest request);
  555. /**
  556. * Simulates an ingest pipeline
  557. */
  558. SimulatePipelineRequestBuilder prepareSimulatePipeline(BytesReference source, XContentType xContentType);
  559. /**
  560. * Explain the allocation of a shard
  561. */
  562. void allocationExplain(ClusterAllocationExplainRequest request, ActionListener<ClusterAllocationExplainResponse> listener);
  563. /**
  564. * Explain the allocation of a shard
  565. */
  566. ActionFuture<ClusterAllocationExplainResponse> allocationExplain(ClusterAllocationExplainRequest request);
  567. /**
  568. * Explain the allocation of a shard
  569. */
  570. ClusterAllocationExplainRequestBuilder prepareAllocationExplain();
  571. /**
  572. * Store a script in the cluster state
  573. */
  574. PutStoredScriptRequestBuilder preparePutStoredScript();
  575. /**
  576. * Delete a script from the cluster state
  577. */
  578. void deleteStoredScript(DeleteStoredScriptRequest request, ActionListener<AcknowledgedResponse> listener);
  579. /**
  580. * Delete a script from the cluster state
  581. */
  582. ActionFuture<AcknowledgedResponse> deleteStoredScript(DeleteStoredScriptRequest request);
  583. /**
  584. * Delete a script from the cluster state
  585. */
  586. DeleteStoredScriptRequestBuilder prepareDeleteStoredScript();
  587. /**
  588. * Delete a script from the cluster state
  589. */
  590. DeleteStoredScriptRequestBuilder prepareDeleteStoredScript(String id);
  591. /**
  592. * Store a script in the cluster state
  593. */
  594. void putStoredScript(PutStoredScriptRequest request, ActionListener<AcknowledgedResponse> listener);
  595. /**
  596. * Store a script in the cluster state
  597. */
  598. ActionFuture<AcknowledgedResponse> putStoredScript(PutStoredScriptRequest request);
  599. /**
  600. * Get a script from the cluster state
  601. */
  602. GetStoredScriptRequestBuilder prepareGetStoredScript();
  603. /**
  604. * Get a script from the cluster state
  605. */
  606. GetStoredScriptRequestBuilder prepareGetStoredScript(String id);
  607. /**
  608. * Get a script from the cluster state
  609. */
  610. void getStoredScript(GetStoredScriptRequest request, ActionListener<GetStoredScriptResponse> listener);
  611. /**
  612. * Get a script from the cluster state
  613. */
  614. ActionFuture<GetStoredScriptResponse> getStoredScript(GetStoredScriptRequest request);
  615. }