|
@@ -20,9 +20,11 @@
|
|
|
package org.elasticsearch.rest.action.admin.indices;
|
|
|
|
|
|
import org.elasticsearch.Version;
|
|
|
+import org.elasticsearch.action.admin.indices.upgrade.get.UpgradeStatusRequest;
|
|
|
import org.elasticsearch.action.admin.indices.upgrade.get.UpgradeStatusResponse;
|
|
|
import org.elasticsearch.action.admin.indices.upgrade.post.UpgradeRequest;
|
|
|
import org.elasticsearch.action.admin.indices.upgrade.post.UpgradeResponse;
|
|
|
+import org.elasticsearch.action.support.IndicesOptions;
|
|
|
import org.elasticsearch.client.node.NodeClient;
|
|
|
import org.elasticsearch.common.Strings;
|
|
|
import org.elasticsearch.common.collect.Tuple;
|
|
@@ -68,20 +70,22 @@ public class RestUpgradeAction extends BaseRestHandler {
|
|
|
}
|
|
|
|
|
|
private RestChannelConsumer handleGet(final RestRequest request, NodeClient client) {
|
|
|
- return channel -> client.admin().indices().prepareUpgradeStatus(Strings.splitStringByCommaToArray(request.param("index")))
|
|
|
- .execute(new RestBuilderListener<UpgradeStatusResponse>(channel) {
|
|
|
- @Override
|
|
|
- public RestResponse buildResponse(UpgradeStatusResponse response, XContentBuilder builder) throws Exception {
|
|
|
- builder.startObject();
|
|
|
- response.toXContent(builder, request);
|
|
|
- builder.endObject();
|
|
|
- return new BytesRestResponse(OK, builder);
|
|
|
- }
|
|
|
- });
|
|
|
+ UpgradeStatusRequest statusRequest = new UpgradeStatusRequest(Strings.splitStringByCommaToArray(request.param("index")));
|
|
|
+ statusRequest.indicesOptions(IndicesOptions.fromRequest(request, statusRequest.indicesOptions()));
|
|
|
+ return channel -> client.admin().indices().upgradeStatus(statusRequest, new RestBuilderListener<UpgradeStatusResponse>(channel) {
|
|
|
+ @Override
|
|
|
+ public RestResponse buildResponse(UpgradeStatusResponse response, XContentBuilder builder) throws Exception {
|
|
|
+ builder.startObject();
|
|
|
+ response.toXContent(builder, request);
|
|
|
+ builder.endObject();
|
|
|
+ return new BytesRestResponse(OK, builder);
|
|
|
+ }
|
|
|
+ });
|
|
|
}
|
|
|
|
|
|
private RestChannelConsumer handlePost(final RestRequest request, NodeClient client) {
|
|
|
UpgradeRequest upgradeReq = new UpgradeRequest(Strings.splitStringByCommaToArray(request.param("index")));
|
|
|
+ upgradeReq.indicesOptions(IndicesOptions.fromRequest(request, upgradeReq.indicesOptions()));
|
|
|
upgradeReq.upgradeOnlyAncientSegments(request.paramAsBoolean("only_ancient_segments", false));
|
|
|
return channel -> client.admin().indices().upgrade(upgradeReq, new RestBuilderListener<UpgradeResponse>(channel) {
|
|
|
@Override
|