Package org.apache.lucene.facet.range
Class LongRangeFacetCounts
java.lang.Object
org.apache.lucene.facet.Facets
org.apache.lucene.facet.range.LongRangeFacetCounts
Facets implementation that computes counts for
dynamic long ranges from a provided ValueSource,
using FunctionValues.longVal(int). Use
this for dimensions that change in real-time (e.g. a
relative time based dimension like "Past day", "Past 2
days", etc.) or that change for each request (e.g.
distance from the user's location, "invalid input: '<' 1 km", "invalid input: '<' 2 km",
etc.).-
Constructor Summary
ConstructorsConstructorDescriptionLongRangeFacetCounts(String field, FacetsCollector hits, LongRange... ranges) CreateLongRangeFacetCounts, usingLongFieldSourcefrom the specified field.LongRangeFacetCounts(String field, ValueSource valueSource, FacetsCollector hits, LongRange... ranges) CreateRangeFacetCounts, using the providedValueSource.LongRangeFacetCounts(String field, ValueSource valueSource, FacetsCollector hits, Filter fastMatchFilter, LongRange... ranges) CreateRangeFacetCounts, using the providedValueSource, and using the provided Filter as a fastmatch: only documents passing the filter are checked for the matching ranges. -
Method Summary
Modifier and TypeMethodDescriptiongetAllDims(int topN) Returns topN labels for any dimension that had hits, sorted by the number of hits that dimension matched; this is used for "sparse" faceting, where many different dimensions were indexed, for example depending on the type of document.getSpecificValue(String dim, String... path) Return the count or value for a specific path.getTopChildren(int topN, String dim, String... path) Returns the topN child labels under the specified path.
-
Constructor Details
-
LongRangeFacetCounts
public LongRangeFacetCounts(String field, FacetsCollector hits, LongRange... ranges) throws IOException CreateLongRangeFacetCounts, usingLongFieldSourcefrom the specified field.- Throws:
IOException
-
LongRangeFacetCounts
public LongRangeFacetCounts(String field, ValueSource valueSource, FacetsCollector hits, LongRange... ranges) throws IOException CreateRangeFacetCounts, using the providedValueSource.- Throws:
IOException
-
LongRangeFacetCounts
public LongRangeFacetCounts(String field, ValueSource valueSource, FacetsCollector hits, Filter fastMatchFilter, LongRange... ranges) throws IOException CreateRangeFacetCounts, using the providedValueSource, and using the provided Filter as a fastmatch: only documents passing the filter are checked for the matching ranges. The filter must be random access (implementDocIdSet.bits()).- Throws:
IOException
-
-
Method Details
-
getTopChildren
Description copied from class:FacetsReturns the topN child labels under the specified path. Returns null if the specified path doesn't exist or if this dimension was never seen.- Specified by:
getTopChildrenin classFacets
-
getSpecificValue
Description copied from class:FacetsReturn the count or value for a specific path. Returns -1 if this path doesn't exist, else the count.- Specified by:
getSpecificValuein classFacets- Throws:
IOException
-
getAllDims
Description copied from class:FacetsReturns topN labels for any dimension that had hits, sorted by the number of hits that dimension matched; this is used for "sparse" faceting, where many different dimensions were indexed, for example depending on the type of document.- Specified by:
getAllDimsin classFacets- Throws:
IOException
-