1
1
package org .elasticsearch .mapping ;
2
2
3
- import java .util .ArrayList ;
4
- import java .util .HashMap ;
5
- import java .util .List ;
6
- import java .util .Map ;
3
+ import java .util .*;
7
4
import java .util .Map .Entry ;
8
- import java . util . Set ;
5
+
9
6
import javax .annotation .Resource ;
7
+
10
8
import org .elasticsearch .action .count .CountRequestBuilder ;
11
9
import org .elasticsearch .action .count .CountResponse ;
12
10
import org .elasticsearch .action .search .SearchRequestBuilder ;
16
14
import org .elasticsearch .common .collect .Maps ;
17
15
import org .elasticsearch .common .logging .ESLogger ;
18
16
import org .elasticsearch .common .logging .Loggers ;
19
- import org .elasticsearch .index .query .BoolQueryBuilder ;
20
- import org .elasticsearch .index .query .FilterBuilder ;
21
- import org .elasticsearch .index .query .FilterBuilders ;
22
- import org .elasticsearch .index .query .QueryBuilder ;
23
- import org .elasticsearch .index .query .QueryBuilders ;
17
+ import org .elasticsearch .index .query .*;
24
18
import org .elasticsearch .index .query .functionscore .ScoreFunctionBuilders ;
25
19
import org .elasticsearch .search .aggregations .AggregationBuilder ;
26
20
import org .elasticsearch .search .aggregations .AggregationBuilders ;
27
- import org .elasticsearch .search .facet .FacetBuilder ;
28
21
import org .elasticsearch .search .sort .FieldSortBuilder ;
29
22
import org .elasticsearch .search .sort .SortBuilders ;
30
23
import org .elasticsearch .search .sort .SortOrder ;
@@ -508,11 +501,10 @@ private void addAggregations(Map<String, String[]> filters, String className, Se
508
501
if (aggregations .size () > 0 ) {
509
502
AggregationBuilder aggregationBuilder ;
510
503
511
- if (filter == null ){
504
+ if (filter == null ) {
512
505
// In order to gather all unfiltered aggregations faceted results under one single parent aggregation, a Global Aggregation is used
513
506
aggregationBuilder = AggregationBuilders .global ("global_aggregation" );
514
- }
515
- else {
507
+ } else {
516
508
// To include filters inside filtered aggregation results
517
509
aggregationBuilder = AggregationBuilders .filters ("filter_aggregation" ).filter (filter );
518
510
}
@@ -579,30 +571,6 @@ private FilterBuilder getAndFilter(List<FilterBuilder> filters) {
579
571
return FilterBuilders .andFilter (filters .toArray (new FilterBuilder [filters .size ()]));
580
572
}
581
573
582
- /**
583
- * Create a list of facets for the given type.
584
- *
585
- * @param className The name of the class for which to create facets.
586
- * @param filters The set of facets to exclude from the facet creation.
587
- * @return a {@link List} of {@link FacetBuilder facet builders}.
588
- */
589
- private List <FacetBuilder > buildFacets (String className , Set <String > filters ) {
590
- final List <FacetBuilder > facetBuilders = new ArrayList <FacetBuilder >();
591
-
592
- List <IFacetBuilderHelper > facetBuilderHelpers = mappingBuilder .getFacets (className );
593
- if (facetBuilderHelpers == null ) {
594
- return facetBuilders ;
595
- }
596
-
597
- for (IFacetBuilderHelper facetBuilderHelper : facetBuilderHelpers ) {
598
- if (filters == null || !filters .contains (facetBuilderHelper .getEsFieldName ())) {
599
- facetBuilders .add (facetBuilderHelper .buildFacet ());
600
-
601
- }
602
- }
603
- return facetBuilders ;
604
- }
605
-
606
574
/**
607
575
* Create a list of aggregations counts for the given type.
608
576
*
@@ -614,16 +582,16 @@ private List<AggregationBuilder> buildAggregations(String className, Set<String>
614
582
final List <AggregationBuilder > aggregationBuilders = new ArrayList <AggregationBuilder >();
615
583
List <IFacetBuilderHelper > facetBuilderHelpers = mappingBuilder .getFacets (className );
616
584
617
- if (facetBuilderHelpers == null || facetBuilderHelpers .size () < 1 )
585
+ if (facetBuilderHelpers == null || facetBuilderHelpers .size () < 1 )
618
586
return aggregationBuilders ;
619
587
620
588
for (IFacetBuilderHelper facetBuilderHelper : facetBuilderHelpers ) {
621
- if (filters == null || !filters .contains (facetBuilderHelper .getEsFieldName ()))
622
- aggregationBuilders .add (AggregationBuilders .terms (facetBuilderHelper .getEsFieldName ()).field (facetBuilderHelper .getEsFieldName ()));
589
+ if (filters == null || !filters .contains (facetBuilderHelper .getEsFieldName ())) {
590
+ aggregationBuilders .add (facetBuilderHelper .buildFacet ());
591
+ }
623
592
}
624
593
625
594
return aggregationBuilders ;
626
-
627
595
}
628
596
}
629
597
}
0 commit comments