ids =arrayOfObjectsToStringArray(idsParameters,1,idsParameters.length-1); x = QueryBuilders.idsQuery(type).addIds(ids); break; case NESTED_COMPLEX:
/** * Adds ids to the filter. */ public IdsQueryBuilder ids(String... ids) { return addIds(ids); }
/** * Adds ids to the filter. */ public IdsQueryBuilder ids(Collection<String> ids) { return addIds(ids); }
private void lookupAnnotationFields(Map<String, Document> idMap) { QueryBuilder qb = QueryBuilders.idsQuery(getDocumentType()).addIds(idMap.keySet()); SearchRequestBuilder srb = getClient().prepareSearch(getIndexName()) .addFields("*") .setQuery(qb) .setSize(idMap.size()); LOGGER.debug("Annotation field lookup query: {}", srb.toString()); SearchResponse response = srb.execute().actionGet(); for (SearchHit hit : response.getHits().getHits()) { populateAnnotationFields(hit, idMap.get(hit.getId())); } }
return QueryBuilders.idsQuery(Profile.ITEM_TYPE).addIds(ids.toArray(new String[0]));
idsFilterBuilder.addIds(ids);
for(int i=0; i<types.length; i++) types[i] = state.getSources().get(i).getSource(); String[] ids = new String[values.size()]; return new QueryWrapper(QueryBuilders.idsQuery(types).addIds(values.toArray(ids)));
public long count(Ngram ngram, String[] ids){ String field = ngram.getField(); int slop = ngram.getSlop(); boolean inOrder = ngram.isInOrder(); SpanNearQueryBuilder queryBuilder = QueryBuilders.spanNearQuery(new SpanTermQueryBuilder(field, ngram.getTerms()[0]), slop); for (int i = 1; i < ngram.getTerms().length; i++){ queryBuilder.addClause(new SpanTermQueryBuilder(field, ngram.getTerms()[1])); } queryBuilder.inOrder(inOrder); IdsQueryBuilder idsFilterBuilder = new IdsQueryBuilder(documentType); idsFilterBuilder.addIds(ids); long hits = client.prepareSearch(this.indexName).setQuery(queryBuilder) .execute().actionGet().getHits().getTotalHits(); return hits; }
public Collection<org.elasticsearch.search.aggregations.bucket.terms.Terms.Bucket> termAggregation(String field, String[] ids){ IdsQueryBuilder idsFilterBuilder = new IdsQueryBuilder(documentType); idsFilterBuilder.addIds(ids); SearchResponse response = client.prepareSearch(indexName) //no return for matches .setSize(0) .setQuery(QueryBuilders.boolQuery() .filter(idsFilterBuilder) .must(QueryBuilders.matchAllQuery())) //return all terms .addAggregation(terms("agg").field(field).size(Integer.MAX_VALUE)) .execute().actionGet(); org.elasticsearch.search.aggregations.bucket.terms.Terms terms = response.getAggregations().get("agg"); Collection<org.elasticsearch.search.aggregations.bucket.terms.Terms.Bucket> buckets = terms.getBuckets(); return buckets; }
protected MultiSearchRequest toMultiSearchRequest(final MultiGetRequest multiGetRequest) { final MultiSearchRequest msearch = new MultiSearchRequest(); msearch.copyContextFrom(multiGetRequest); msearch.listenerThreaded(multiGetRequest.listenerThreaded()); for (final Iterator<Item> iterator = multiGetRequest.iterator(); iterator.hasNext();) { final Item item = iterator.next(); final SearchRequest st = new SearchRequest(); st.routing(item.routing()); st.indices(item.indices()); st.types(item.type()); st.listenerThreaded(false); st.preference(multiGetRequest.preference()); st.source(SearchSourceBuilder.searchSource().query(new IdsQueryBuilder(item.type()).addIds(item.id()))); msearch.add(st); } return msearch; }
/** * simple match * use whitespace analyzer * @param field * @param phrase already stemmed * @param ids * @param operator * @return */ public SearchResponse match(String field, String phrase, String[] ids, Operator operator){ IdsQueryBuilder idsFilterBuilder = new IdsQueryBuilder(documentType); idsFilterBuilder.addIds(ids); SearchResponse response = client.prepareSearch(indexName).setSize(ids.length). setTrackScores(false). setFetchSource(false).setExplain(false).setFetchSource(false). setQuery(QueryBuilders.boolQuery() .should(QueryBuilders.matchQuery(field, phrase) .operator(operator).analyzer("whitespace")) .must(idsFilterBuilder)) .execute().actionGet(); return response; }
String[] ids, int slop) { IdsQueryBuilder idsFilterBuilder = new IdsQueryBuilder(documentType); idsFilterBuilder.addIds(ids);
protected SearchRequest toSearchRequest(final GetRequest request) { final SearchRequest searchRequest = new SearchRequest(); searchRequest.listenerThreaded(false); searchRequest.routing(request.routing()); searchRequest.copyContextFrom(request); searchRequest.preference(request.preference()); searchRequest.indices(request.indices()); searchRequest.types(request.type()); searchRequest.source(SearchSourceBuilder.searchSource().query(new IdsQueryBuilder(request.type()).addIds(request.id()))); return searchRequest; }
protected SearchRequest toSearchRequest(final RestRequest request) { final SearchRequest searchRequest = new SearchRequest(); searchRequest.listenerThreaded(false); searchRequest.routing(request.param("routing")); searchRequest.copyContextFrom(request); searchRequest.preference(request.param("preference")); searchRequest.indices(request.param("index")); searchRequest.types(request.param("type")); searchRequest.source(SearchSourceBuilder.searchSource().query( new IdsQueryBuilder(request.param("type")).addIds(request.param("id")))); return searchRequest; }
for(int i=0; i<types.length; i++) types[i] = state.getSources().get(i).getSource(); if(compareExp.getType() == ComparisonExpressionType.EQUAL){ if(field.equals(Heading.ID)) comparison = QueryBuilders.idsQuery(types).addIds((String)value); else if(field.equals(Heading.SEARCH)) comparison = QueryBuilders.queryStringQuery((String)value); else if(value instanceof String) comparison = queryForString(field, (String)value);
idsFilterBuilder.addIds(ids);
idsFilterBuilder.addIds(ids);
st.listenerThreaded(false); st.preference(request.param("preference")); st.source(SearchSourceBuilder.searchSource().query(new IdsQueryBuilder(item.type()).addIds(item.id()))); msearch.add(st);
idsFilterBuilder.addIds(ids);