public class MultiAssociationsFacetsAggregator extends Object implements FacetsAggregator
FacetsAggregator
which chains multiple aggregators for aggregating
the association values of categories that belong to the same category list.
While nothing prevents you from chaining general purpose aggregators, it is
only useful for aggregating association values, as each association type is
written in its own list.Constructor and Description |
---|
MultiAssociationsFacetsAggregator(Map<CategoryPath,FacetsAggregator> aggregators)
Creates a new
MultiAssociationsFacetsAggregator over the given
aggregators. |
Modifier and Type | Method and Description |
---|---|
void |
aggregate(FacetsCollector.MatchingDocs matchingDocs,
CategoryListParams clp,
FacetArrays facetArrays)
Aggregate the facets found in the given matching documents.
|
boolean |
requiresDocScores()
Returns
true if this aggregator requires document scores. |
void |
rollupValues(FacetRequest fr,
int ordinal,
int[] children,
int[] siblings,
FacetArrays facetArrays)
Rollup the values of the given ordinal.
|
public MultiAssociationsFacetsAggregator(Map<CategoryPath,FacetsAggregator> aggregators)
MultiAssociationsFacetsAggregator
over the given
aggregators. The mapping is used by
rollupValues(FacetRequest, int, int[], int[], FacetArrays)
to
rollup the values of the speicfic category by the corresponding
FacetsAggregator
. However, since each FacetsAggregator
handles the associations of a specific type, which could cover multiple
categories, the aggregation is done on the unique set of aggregators, which
are identified by their class.public void aggregate(FacetsCollector.MatchingDocs matchingDocs, CategoryListParams clp, FacetArrays facetArrays) throws IOException
FacetsAggregator
aggregate
in interface FacetsAggregator
IOException
public void rollupValues(FacetRequest fr, int ordinal, int[] children, int[] siblings, FacetArrays facetArrays)
FacetsAggregator
CategoryListParams.OrdinalPolicy.NO_PARENTS
. The given
ordinal is the requested category, and you should use the children and
siblings arrays to traverse its sub-tree.rollupValues
in interface FacetsAggregator
public boolean requiresDocScores()
FacetsAggregator
true
if this aggregator requires document scores.requiresDocScores
in interface FacetsAggregator
Copyright © 2000-2013 Apache Software Foundation. All Rights Reserved.