java.lang.Object
org.apache.lucene.facet.Facets
org.apache.lucene.facet.FacetCountsWithFilterQuery
org.apache.lucene.facet.range.RangeFacetCounts
- Direct Known Subclasses:
DoubleRangeFacetCounts,LongRangeFacetCounts
Base class for range faceting.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static final classReusable entry to hold range label and int count. -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected int[]Counts.protected final StringOur field name.protected final Range[]Ranges passed to constructor.protected intTotal number of hits.Fields inherited from class org.apache.lucene.facet.FacetCountsWithFilterQuery
fastMatchQuery -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedRangeFacetCounts(String field, Range[] ranges, Query fastMatchQuery) CreateRangeFacetCounts -
Method Summary
Modifier and TypeMethodDescriptionprotected voidcount(String field, List<FacetsCollector.MatchingDocs> matchingDocs) Counts from the provided field.getAllChildren(String dim, String... path) Returns all child labels with non-zero counts under the specified path.getAllDims(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.protected abstract LongRange[]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.protected longmapDocValue(long l) protected LongRangeCountertoString()private voidvalidateDimAndPathForGetChildren(String dim, String... path) Methods inherited from class org.apache.lucene.facet.FacetCountsWithFilterQuery
createIteratorMethods inherited from class org.apache.lucene.facet.Facets
getTopDims, validateTopN
-
Field Details
-
ranges
Ranges passed to constructor. -
counts
protected int[] countsCounts. -
field
Our field name. -
totCount
protected int totCountTotal number of hits.
-
-
Constructor Details
-
RangeFacetCounts
CreateRangeFacetCounts
-
-
Method Details
-
getLongRanges
-
mapDocValue
protected long mapDocValue(long l) -
setupCounter
-
count
protected void count(String field, List<FacetsCollector.MatchingDocs> matchingDocs) throws IOException Counts from the provided field.- Throws:
IOException
-
getAllChildren
Returns all child labels with non-zero counts under the specified path. Users should make no assumptions about ordering of the children. Returns null if the specified path doesn't exist or if this dimension was never seen.NOTE: This implementation guarantees that ranges will be returned in the order specified by the user when calling the constructor.
- Specified by:
getAllChildrenin classFacets- Throws:
IOException
-
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- Throws:
IOException
-
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
-
toString
-
validateDimAndPathForGetChildren
-