Class RangeFacetCounts

Direct Known Subclasses:
DoubleRangeFacetCounts, LongRangeFacetCounts

abstract class RangeFacetCounts extends FacetCountsWithFilterQuery
Base class for range faceting.
  • Field Details

    • ranges

      protected final Range[] ranges
      Ranges passed to constructor.
    • counts

      protected int[] counts
      Counts.
    • field

      protected final String field
      Our field name.
    • totCount

      protected int totCount
      Total number of hits.
  • Constructor Details

    • RangeFacetCounts

      protected RangeFacetCounts(String field, Range[] ranges, Query fastMatchQuery)
      Create RangeFacetCounts
  • Method Details

    • getLongRanges

      protected abstract LongRange[] getLongRanges()
    • mapDocValue

      protected long mapDocValue(long l)
    • setupCounter

      protected LongRangeCounter setupCounter()
    • count

      protected void count(String field, List<FacetsCollector.MatchingDocs> matchingDocs) throws IOException
      Counts from the provided field.
      Throws:
      IOException
    • getAllChildren

      public FacetResult getAllChildren(String dim, String... path) throws IOException
      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:
      getAllChildren in class Facets
      Throws:
      IOException
    • getTopChildren

      public FacetResult getTopChildren(int topN, String dim, String... path) throws IOException
      Description copied from class: Facets
      Returns 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:
      getTopChildren in class Facets
      Throws:
      IOException
    • getSpecificValue

      public Number getSpecificValue(String dim, String... path) throws IOException
      Description copied from class: Facets
      Return the count or value for a specific path. Returns -1 if this path doesn't exist, else the count.
      Specified by:
      getSpecificValue in class Facets
      Throws:
      IOException
    • getAllDims

      public List<FacetResult> getAllDims(int topN) throws IOException
      Description copied from class: Facets
      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.
      Specified by:
      getAllDims in class Facets
      Throws:
      IOException
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • validateDimAndPathForGetChildren

      private void validateDimAndPathForGetChildren(String dim, String... path)