Skip to content
Snippets Groups Projects
Commit 56a5d605 authored by Nicolas.Rod's avatar Nicolas.Rod
Browse files

feat(ElasticsearchService): add parameter to count total hits by default on search method

parent 8c6e4ab8
No related branches found
No related tags found
1 merge request!358feat(ElasticsearchService): add parameter to count total hits by default on search method
......@@ -276,10 +276,15 @@ public abstract class ElasticsearchService<T extends IndexMetadata> extends Inde
@Override
public FacetPage<T> search(String indexName, List<SearchCondition> conditions, List<FacetRequest> facetRequests,
Pageable pageable, FieldsRequest fieldsRequest) {
return this.search(indexName, conditions, facetRequests, pageable, fieldsRequest, true);
}
public FacetPage<T> search(String indexName, List<SearchCondition> conditions, List<FacetRequest> facetRequests,
Pageable pageable, FieldsRequest fieldsRequest, boolean trackTotalHits) {
final BoolQueryBuilder boolQuery = this.getBooleanQueryBuilder(conditions);
return this.search(indexName, boolQuery, facetRequests, pageable, fieldsRequest);
return this.search(indexName, boolQuery, facetRequests, pageable, fieldsRequest, trackTotalHits);
}
@Override
......@@ -489,11 +494,11 @@ public abstract class ElasticsearchService<T extends IndexMetadata> extends Inde
}
private FacetPage<T> search(String indexName, AbstractQueryBuilder<?> q, List<FacetRequest> facetRequests, Pageable pageable) {
return this.search(indexName, q, facetRequests, pageable, null);
return this.search(indexName, q, facetRequests, pageable, null, true);
}
private FacetPage<T> search(String indexName, AbstractQueryBuilder<?> q, List<FacetRequest> facetRequests, Pageable pageable,
FieldsRequest fieldsRequest) {
FieldsRequest fieldsRequest, boolean trackTotalHits) {
final SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder().query(q);
......@@ -504,6 +509,9 @@ public abstract class ElasticsearchService<T extends IndexMetadata> extends Inde
searchSourceBuilder.fetchSource(includes, excludes);
}
// Parameter indicating wether the total number of records must be counted
searchSourceBuilder.trackTotalHits(trackTotalHits);
final SearchRequest searchRequest = new SearchRequest(indexName.split(SolidifyConstants.FIELD_SEP)).source(searchSourceBuilder);
// Aggregations
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment