public static long parseVersion(RestRequest request) { if (request.hasParam("version")) { return request.paramAsLong("version", Versions.MATCH_ANY); } String ifMatch = request.header("If-Match"); if (ifMatch != null) { return Long.parseLong(ifMatch); } return Versions.MATCH_ANY; }
clusterStateRequest.masterNodeTimeout(request.paramAsTime("master_timeout", clusterStateRequest.masterNodeTimeout())); if (request.hasParam("wait_for_metadata_version")) { clusterStateRequest.waitForMetaDataVersion(request.paramAsLong("wait_for_metadata_version", 0));
@Override public RestChannelConsumer prepareRequest(final RestRequest request, final NodeClient client) throws IOException { DeleteRequest deleteRequest = new DeleteRequest(request.param("index"), request.param("type"), request.param("id")); deleteRequest.routing(request.param("routing")); deleteRequest.parent(request.param("parent")); deleteRequest.timeout(request.paramAsTime("timeout", DeleteRequest.DEFAULT_TIMEOUT)); deleteRequest.setRefreshPolicy(request.param("refresh")); deleteRequest.version(RestActions.parseVersion(request)); deleteRequest.versionType(VersionType.fromString(request.param("version_type"), deleteRequest.versionType())); deleteRequest.setIfSeqNo(request.paramAsLong("if_seq_no", deleteRequest.ifSeqNo())); deleteRequest.setIfPrimaryTerm(request.paramAsLong("if_primary_term", deleteRequest.ifPrimaryTerm())); String waitForActiveShards = request.param("wait_for_active_shards"); if (waitForActiveShards != null) { deleteRequest.waitForActiveShards(ActiveShardCount.parseString(waitForActiveShards)); } return channel -> client.delete(deleteRequest, new RestStatusToXContentListener<>(channel)); } }
@Override public RestChannelConsumer prepareRequest(final RestRequest request, final NodeClient client) throws IOException { IndexRequest indexRequest = new IndexRequest(request.param("index"), request.param("type"), request.param("id")); indexRequest.routing(request.param("routing")); indexRequest.parent(request.param("parent")); indexRequest.setPipeline(request.param("pipeline")); indexRequest.source(request.requiredContent(), request.getXContentType()); indexRequest.timeout(request.paramAsTime("timeout", IndexRequest.DEFAULT_TIMEOUT)); indexRequest.setRefreshPolicy(request.param("refresh")); indexRequest.version(RestActions.parseVersion(request)); indexRequest.versionType(VersionType.fromString(request.param("version_type"), indexRequest.versionType())); indexRequest.setIfSeqNo(request.paramAsLong("if_seq_no", indexRequest.ifSeqNo())); indexRequest.setIfPrimaryTerm(request.paramAsLong("if_primary_term", indexRequest.ifPrimaryTerm())); String sOpType = request.param("op_type"); String waitForActiveShards = request.param("wait_for_active_shards"); if (waitForActiveShards != null) { indexRequest.waitForActiveShards(ActiveShardCount.parseString(waitForActiveShards)); } if (sOpType != null) { indexRequest.opType(sOpType); } return channel -> client.index(indexRequest, new RestStatusToXContentListener<>(channel, r -> r.getLocation(indexRequest.routing()))); }
public static long parseVersion(RestRequest request) { if (request.hasParam("version")) { return request.paramAsLong("version", Versions.MATCH_ANY); } String ifMatch = request.header("If-Match"); if (ifMatch != null) { return Long.parseLong(ifMatch); } return Versions.MATCH_ANY; }
public static long parseVersion(RestRequest request) { if (request.hasParam("version")) { return request.paramAsLong("version", Versions.MATCH_ANY); } String ifMatch = request.header("If-Match"); if (ifMatch != null) { return Long.parseLong(ifMatch); } return Versions.MATCH_ANY; }
public static long parseVersion(RestRequest request) { if (request.hasParam("version")) { return request.paramAsLong("version", Versions.MATCH_ANY); } String ifMatch = request.header("If-Match"); if (ifMatch != null) { return Long.parseLong(ifMatch); } return Versions.MATCH_ANY; }
public static long parseVersion(RestRequest request) { if (request.hasParam("version")) { return request.paramAsLong("version", Versions.MATCH_ANY); } String ifMatch = request.header("If-Match"); if (ifMatch != null) { return Long.parseLong(ifMatch); } return Versions.MATCH_ANY; }
private XContentBuilder createXContentBuilderForChanges(final RestRequest request, List<String> indices) throws IOException { XContentBuilder builder = XContentFactory.contentBuilder(XContentType.JSON); try { long since = request.paramAsLong("since", Long.MIN_VALUE); builder.startObject(); for (String indexName : indices) {
@Override protected void handleRequest(RestRequest request, RestChannel channel, Client client) throws Exception { logger.debug("Request"); List<String> indices = Arrays.asList(splitIndices(request.param("index"))); if (indices.isEmpty()) { indices = new ArrayList<String>(changes.keySet()); } boolean wait = request.paramAsBoolean("wait", Boolean.FALSE); long timeout = request.paramAsLong("timeout", 15 * 60 * 1000); // Wait for trigger if (wait) { IndexChangeWatcher watcher = addWatcher(indices, timeout); boolean changeDetected = watcher.aquire(); removeWatcher(indices); if (!changeDetected) { channel.sendResponse(new BytesRestResponse(RestStatus.NOT_FOUND, "No change detected during timeout interval")); return; } if (watcher.getChange() == null || watcher.getChange().getType() == null) { channel.sendResponse(new BytesRestResponse(RestStatus.NOT_FOUND, "No more shards available to trigger waiting watch")); return; } } XContentBuilder builder = createXContentBuilderForChanges(request, indices); channel.sendResponse(new BytesRestResponse(OK, builder)); }
@Override public void handleRequest(final RestRequest request, final RestChannel channel, Client client) { PutIndexedScriptRequest putRequest = new PutIndexedScriptRequest(getScriptLang(request), request.param("id")); putRequest.version(request.paramAsLong("version", putRequest.version())); putRequest.versionType(VersionType.fromString(request.param("version_type"), putRequest.versionType())); putRequest.source(request.content());
@Override public void handleRequest(final RestRequest request, final RestChannel channel, Client client) { DeleteIndexedScriptRequest deleteIndexedScriptRequest = new DeleteIndexedScriptRequest(getScriptLang(request), request.param("id")); deleteIndexedScriptRequest.version(request.paramAsLong("version", deleteIndexedScriptRequest.version())); deleteIndexedScriptRequest.versionType(VersionType.fromString(request.param("version_type"), deleteIndexedScriptRequest.versionType())); client.deleteIndexedScript(deleteIndexedScriptRequest, new RestBuilderListener<DeleteIndexedScriptResponse>(channel) { @Override public RestResponse buildResponse(DeleteIndexedScriptResponse result, XContentBuilder builder) throws Exception { builder.startObject() .field(Fields.FOUND, result.isFound()) .field(Fields._INDEX, result.getIndex()) .field(Fields._TYPE, result.getType()) .field(Fields._ID, result.getId()) .field(Fields._VERSION, result.getVersion()) .endObject(); RestStatus status = OK; if (!result.isFound()) { status = NOT_FOUND; } return new BytesRestResponse(status, builder); } }); }
@Override public void handleRequest(final RestRequest request, final RestChannel channel, Client client) { final GetIndexedScriptRequest getRequest = new GetIndexedScriptRequest(getScriptLang(request), request.param("id")); getRequest.version(request.paramAsLong("version", getRequest.version())); getRequest.versionType(VersionType.fromString(request.param("version_type"), getRequest.versionType())); client.getIndexedScript(getRequest, new RestBuilderListener<GetIndexedScriptResponse>(channel) { @Override public RestResponse buildResponse(GetIndexedScriptResponse response, XContentBuilder builder) throws Exception { builder.startObject(); builder.field(Fields.LANG, response.getScriptLang()); builder.field(Fields._ID, response.getId()); builder.field(Fields.FOUND, response.isExists()); RestStatus status = RestStatus.NOT_FOUND; if (response.isExists()) { builder.field(Fields._VERSION, response.getVersion()); builder.field(getScriptFieldName(), response.getScript()); status = RestStatus.OK; } builder.endObject(); return new BytesRestResponse(status, builder); } }); }