org.elasticsearch.search.builder.SearchSourceBuilder.postFilter()方法的使用及代码示例

x33g5p2x  于2022-01-30 转载在 其他  
字(8.7k)|赞(0)|评价(0)|浏览(247)

本文整理了Java中org.elasticsearch.search.builder.SearchSourceBuilder.postFilter()方法的一些代码示例,展示了SearchSourceBuilder.postFilter()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。SearchSourceBuilder.postFilter()方法的具体详情如下:
包路径:org.elasticsearch.search.builder.SearchSourceBuilder
类名称:SearchSourceBuilder
方法名:postFilter

SearchSourceBuilder.postFilter介绍

[英]Gets the post filter for this request
[中]

代码示例

代码示例来源:origin: spring-projects/spring-data-elasticsearch

private SearchResponse doScroll(SearchRequest request, SearchQuery searchQuery) {
  Assert.notNull(searchQuery.getIndices(), "No index defined for Query");
  Assert.notNull(searchQuery.getTypes(), "No type define for Query");
  Assert.notNull(searchQuery.getPageable(), "Query.pageable is required for scan & scroll");
  if (searchQuery.getFilter() != null) {
    request.source().postFilter(searchQuery.getFilter());
  }
  request.source().version(true);
  try {
    return client.search(request);
  } catch (IOException e) {
    throw new ElasticsearchException("Error for search request with scroll: " + request.toString(), e);
  }
}

代码示例来源:origin: spring-projects/spring-data-elasticsearch

private long doCount(SearchRequest searchRequest, QueryBuilder elasticsearchQuery, QueryBuilder elasticsearchFilter) {
  if (elasticsearchQuery != null) {
    searchRequest.source().query(elasticsearchQuery);
  } else {
    searchRequest.source().query(QueryBuilders.matchAllQuery());
  }
  if (elasticsearchFilter != null) {
    searchRequest.source().postFilter(elasticsearchFilter);
  }
  SearchResponse response;
  try {
    response = client.search(searchRequest);
  } catch (IOException e) {
    throw new ElasticsearchException("Error for search request: " + searchRequest.toString(), e);
  }
  return response.getHits().getTotalHits();
}

代码示例来源:origin: spring-projects/spring-data-elasticsearch

@Override
public <T> List<String> queryForIds(SearchQuery query) {
  SearchRequest request = prepareSearch(query, Optional.ofNullable(query.getQuery()));
  request.source().query(query.getQuery());
  if (query.getFilter() != null) {
    request.source().postFilter(query.getFilter());
  }
  SearchResponse response;
  try {
    response = client.search(request);
  } catch (IOException e) {
    throw new ElasticsearchException("Error for search request: " + request.toString(), e);
  }
  return extractIds(response);
}

代码示例来源:origin: spring-projects/spring-data-elasticsearch

private SearchResponse doScroll(SearchRequest request, CriteriaQuery criteriaQuery) {
  Assert.notNull(criteriaQuery.getIndices(), "No index defined for Query");
  Assert.notNull(criteriaQuery.getTypes(), "No type define for Query");
  Assert.notNull(criteriaQuery.getPageable(), "Query.pageable is required for scan & scroll");
  QueryBuilder elasticsearchQuery = new CriteriaQueryProcessor().createQueryFromCriteria(criteriaQuery.getCriteria());
  QueryBuilder elasticsearchFilter = new CriteriaFilterProcessor()
      .createFilterFromCriteria(criteriaQuery.getCriteria());
  if (elasticsearchQuery != null) {
    request.source().query(elasticsearchQuery);
  } else {
    request.source().query(QueryBuilders.matchAllQuery());
  }
  if (elasticsearchFilter != null) {
    request.source().postFilter(elasticsearchFilter);
  }
  request.source().version(true);
  try {
    return client.search(request);
  } catch (IOException e) {
    throw new ElasticsearchException("Error for search request with scroll: " + request.toString(), e);
  }
}

代码示例来源:origin: spring-projects/spring-data-elasticsearch

@Override
public <T> Page<T> queryForPage(CriteriaQuery criteriaQuery, Class<T> clazz) {
  QueryBuilder elasticsearchQuery = new CriteriaQueryProcessor().createQueryFromCriteria(criteriaQuery.getCriteria());
  QueryBuilder elasticsearchFilter = new CriteriaFilterProcessor()
      .createFilterFromCriteria(criteriaQuery.getCriteria());
  SearchRequest request = prepareSearch(criteriaQuery, clazz);
  if (elasticsearchQuery != null) {
    request.source().query(elasticsearchQuery);
  } else {
    request.source().query(QueryBuilders.matchAllQuery());
  }
  if (criteriaQuery.getMinScore() > 0) {
    request.source().minScore(criteriaQuery.getMinScore());
  }
  if (elasticsearchFilter != null)
    request.source().postFilter(elasticsearchFilter);
  if (logger.isDebugEnabled()) {
    logger.debug("doSearch query:\n" + request.toString());
  }
  SearchResponse response;
  try {
    response = client.search(request);
  } catch (IOException e) {
    throw new ElasticsearchException("Error for search request: " + request.toString(), e);
  }
  return resultsMapper.mapResults(response, clazz, criteriaQuery.getPageable());
}

代码示例来源:origin: spring-projects/spring-data-elasticsearch

private SearchRequest prepareSearch(SearchRequest searchRequest, SearchQuery searchQuery) {
  if (searchQuery.getFilter() != null) {
    searchRequest.source().postFilter(searchQuery.getFilter());

代码示例来源:origin: spring-projects/spring-data-elasticsearch

searchSourceBuilder.postFilter(postFilterQuery);

代码示例来源:origin: org.elasticsearch/elasticsearch

/**
 * Sets a filter that will be executed after the query has been executed and only has affect on the search hits
 * (not aggregations). This filter is always executed as last filtering mechanism.
 */
public SearchRequestBuilder setPostFilter(QueryBuilder postFilter) {
  sourceBuilder().postFilter(postFilter);
  return this;
}

代码示例来源:origin: harbby/presto-connectors

/**
 * Sets a filter on the query executed that only applies to the search query
 * (and not aggs for example).
 */
public SearchSourceBuilder postFilter(String postFilterString) {
  return postFilter(postFilterString.getBytes(Charsets.UTF_8));
}

代码示例来源:origin: org.elasticsearch/elasticsearch

SearchSourceBuilder sourceBuilder = buildExpandSearchSourceBuilder(innerHitBuilder, innerCollapseBuilder)
  .query(groupQuery)
  .postFilter(searchRequest.source().postFilter());
SearchRequest groupRequest = new SearchRequest(searchRequest);
groupRequest.source(sourceBuilder);

代码示例来源:origin: com.strapdata.elasticsearch/elasticsearch

/**
 * Sets a filter that will be executed after the query has been executed and only has affect on the search hits
 * (not aggregations). This filter is always executed as last filtering mechanism.
 */
public SearchRequestBuilder setPostFilter(QueryBuilder postFilter) {
  sourceBuilder().postFilter(postFilter);
  return this;
}

代码示例来源:origin: harbby/presto-connectors

/**
 * Sets a filter on the query executed that only applies to the search query
 * (and not aggs for example).
 */
public SearchRequestBuilder setPostFilter(BytesReference postFilter) {
  sourceBuilder().postFilter(postFilter);
  return this;
}

代码示例来源:origin: harbby/presto-connectors

/**
 * Sets a filter on the query executed that only applies to the search query
 * (and not aggs for example).
 */
public SearchRequestBuilder setPostFilter(XContentBuilder postFilter) {
  sourceBuilder().postFilter(postFilter);
  return this;
}

代码示例来源:origin: apache/servicemix-bundles

/**
 * Sets a filter that will be executed after the query has been executed and only has affect on the search hits
 * (not aggregations). This filter is always executed as last filtering mechanism.
 */
public SearchRequestBuilder setPostFilter(QueryBuilder postFilter) {
  sourceBuilder().postFilter(postFilter);
  return this;
}

代码示例来源:origin: harbby/presto-connectors

/**
 * Sets a filter on the query executed that only applies to the search query
 * (and not aggs for example).
 */
public SearchRequestBuilder setPostFilter(byte[] postFilter, int postFilterOffset, int postFilterLength) {
  sourceBuilder().postFilter(postFilter, postFilterOffset, postFilterLength);
  return this;
}

代码示例来源:origin: harbby/presto-connectors

/**
 * Sets a filter on the query executed that only applies to the search query
 * (and not aggs for example).
 */
public SearchRequestBuilder setPostFilter(Map postFilter) {
  sourceBuilder().postFilter(postFilter);
  return this;
}

代码示例来源:origin: org.apache.servicemix.bundles/org.apache.servicemix.bundles.elasticsearch

/**
 * Sets a filter that will be executed after the query has been executed and only has affect on the search hits
 * (not aggregations). This filter is always executed as last filtering mechanism.
 */
public SearchRequestBuilder setPostFilter(QueryBuilder postFilter) {
  sourceBuilder().postFilter(postFilter);
  return this;
}

代码示例来源:origin: org.elasticsearch/elasticsearch

context.parsedQuery(queryShardContext.toQuery(source.query()));
if (source.postFilter() != null) {
  InnerHitContextBuilder.extractInnerHits(source.postFilter(), innerHitBuilders);
  context.parsedPostFilter(queryShardContext.toQuery(source.postFilter()));

代码示例来源:origin: VanRoy/spring-data-jest

private long doCount(SearchSourceBuilder searchRequestBuilder, QueryBuilder elasticsearchQuery, QueryBuilder elasticsearchFilter) {
  if (elasticsearchQuery != null) {
    searchRequestBuilder.query(elasticsearchQuery);
  } else {
    searchRequestBuilder.query(QueryBuilders.matchAllQuery());
  }
  if (elasticsearchFilter != null) {
    searchRequestBuilder.postFilter(elasticsearchFilter);
  }
  CountResult result = execute(new Count.Builder().query(searchRequestBuilder.toString()).build());
  return result.getCount().longValue();
}

代码示例来源:origin: VanRoy/spring-data-jest

@Override
public <T> List<String> queryForIds(SearchQuery query) {
  SearchSourceBuilder search = prepareSearch(query).query(query.getQuery()).fetchSource(false);
  if (query.getFilter() != null) {
    search.postFilter(query.getFilter());
  }
  SearchResult result = executeSearch(query, search);
  return extractIds(result);
}

相关文章

微信公众号

最新文章

更多

SearchSourceBuilder类方法