/** * The query source to execute. */ public CountRequestBuilder setSource(byte[] querySource) { request.source(querySource); return this; }
@Override protected CountRequest beforeExecute(CountRequest request) { if (sourceBuilder != null) { request.source(sourceBuilder); } return request; }
/** * The source to execute. */ public CountRequest source(byte[] querySource) { return source(querySource, 0, querySource.length); }
/** * The source to execute. */ public CountRequestBuilder setSource(BytesReference source) { request().source(source); return this; }
/** * The source to execute. */ public CountRequest source(byte[] querySource, int offset, int length) { return source(new BytesArray(querySource, offset, length)); }
/** * The source to execute in the form of a map. */ @SuppressWarnings("unchecked") public CountRequest source(Map querySource) { try { XContentBuilder builder = XContentFactory.contentBuilder(Requests.CONTENT_TYPE); builder.map(querySource); return source(builder); } catch (IOException e) { throw new ElasticsearchGenerationException("Failed to generate [" + querySource + "]", e); } }
@Override public String toString() { if (sourceBuilder != null) { return sourceBuilder.toString(); } if (request.source() != null) { try { return XContentHelper.convertToJson(request.source().toBytesArray(), false, true); } catch (Exception e) { return "{ \"error\" : \"" + ExceptionsHelper.detailedMessage(e) + "\"}"; } } return new QuerySourceBuilder().toString(); } }
@Override public void doRequest(final RestRequest request, final RestChannel channel, final Client client) { String[] indices = Strings.splitStringByCommaToArray(request.param("index")); CountRequest countRequest = new CountRequest(indices); String source = request.param("source"); if (source != null) { countRequest.source(source); } else { QuerySourceBuilder querySourceBuilder = RestActions.parseQuerySource(request); if (querySourceBuilder != null) { countRequest.source(querySourceBuilder); } } client.search(countRequest.toSearchRequest(), new RestResponseListener<SearchResponse>(channel) { @Override public RestResponse buildResponse(SearchResponse countResponse) throws Exception { return RestTable.buildResponse(buildTable(request, countResponse), channel); } }); }
countRequest.indicesOptions(IndicesOptions.fromRequest(request, countRequest.indicesOptions())); if (RestActions.hasBodyContent(request)) { countRequest.source(RestActions.getRestContent(request)); } else { QuerySourceBuilder querySourceBuilder = RestActions.parseQuerySource(request); if (querySourceBuilder != null) { countRequest.source(querySourceBuilder);
public SearchRequest toSearchRequest() { SearchRequest searchRequest = new SearchRequest(indices()); searchRequest.indicesOptions(indicesOptions()); searchRequest.types(types()); searchRequest.routing(routing()); searchRequest.preference(preference()); searchRequest.source(source()); SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder(); searchSourceBuilder.size(0); if (minScore() != DEFAULT_MIN_SCORE) { searchSourceBuilder.minScore(minScore()); } if (terminateAfter() != DEFAULT_TERMINATE_AFTER) { searchSourceBuilder.terminateAfter(terminateAfter()); } searchRequest.extraSource(searchSourceBuilder); return searchRequest; } }