Class LongRangeFacetCounts


  • public class LongRangeFacetCounts
    extends FacetCountsWithFilterQuery
    Facets implementation that computes counts for dynamic long ranges. 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, "< 1 km", "< 2 km", etc.).
    WARNING: This API is experimental and might change in incompatible ways in the next release.
    • Field Detail

      • ranges

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

        protected final int[] counts
        Counts, initialized in by subclass.
      • field

        protected final String field
        Our field name.
      • totCount

        protected int totCount
        Total number of hits.
    • Method Detail

      • getLongRanges

        protected LongRange[] getLongRanges()
      • mapDocValue

        protected long mapDocValue​(long l)
      • 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
      • 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