Class RangeFacetRequest

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable, java.lang.Iterable<FacetRange>

    public class RangeFacetRequest
    extends FacetRequest
    implements java.lang.Iterable<FacetRange>
    A FacetRequest requesting counts for documents with values in specified ranges.

    NOTE: for all ranges, the min value is inclusive and the max value is exclusive.

    See Also:
    Serialized Form
    • Constructor Detail

      • RangeFacetRequest

        public RangeFacetRequest()
      • RangeFacetRequest

        public RangeFacetRequest​(java.lang.String name)
        Construct a new RangeFacetRequest that contains 0 ranges.
      • RangeFacetRequest

        public RangeFacetRequest​(java.lang.String name,
                                 FieldExpression field)
      • RangeFacetRequest

        public RangeFacetRequest​(java.lang.String field,
                                 long min,
                                 long max)
        Construct a new RangeFacetRequest with fixed size ranges from min to max .
      • RangeFacetRequest

        public RangeFacetRequest​(java.lang.String field,
                                 double min,
                                 double max)
        Construct a new RangeFacetRequest with fixed size ranges from min to max .
      • RangeFacetRequest

        public RangeFacetRequest​(java.lang.String field,
                                 long min,
                                 long max,
                                 int buckets)
        Construct a new RangeFacetRequest with fixed size ranges from min to max .
      • RangeFacetRequest

        public RangeFacetRequest​(java.lang.String field,
                                 double min,
                                 double max,
                                 int buckets)
        Construct a new RangeFacetRequest with fixed size ranges from min to max .
    • Method Detail

      • isFacetFinder

        public final boolean isFacetFinder()
        true if the facet finder can replace this FacetRequest with a suggested FacetRequest.

        This will replace a FacetRequest for a numeric field with a RangeFacetRequest when facet finder runs.

        Overrides:
        isFacetFinder in class FacetRequest
      • setFacetFinder

        public final void setFacetFinder​(boolean value)
        Set if FacetFinder is allowed to provide a suggestion for this FacetRequest.
        Overrides:
        setFacetFinder in class FacetRequest
      • getRanges

        public java.util.ArrayList<FacetRange> getRanges()
        Get the facet ranges.
      • iterator

        public java.util.Iterator<FacetRange> iterator()
        Get an iterator over all ranges.
        Specified by:
        iterator in interface java.lang.Iterable<FacetRange>
      • add

        public void add​(FacetRange range)
        Add a range to this request.
      • add

        public void add​(java.lang.String label,
                        java.util.Date min,
                        java.util.Date max)
        Add a Date range to this request.
      • add

        public void add​(int min,
                        int max)
        Add an integer range to this request.
      • add

        public void add​(java.lang.String label,
                        int min,
                        int max)
        Add an integer range to this request.
      • add

        public void add​(java.lang.String label,
                        java.math.BigDecimal min,
                        java.math.BigDecimal max)
        Add an integer range to this request.
      • add

        public void add​(long min,
                        long max)
        Add a long integer range to this request.
      • add

        public void add​(java.lang.String label,
                        long min,
                        long max)
        Add a long integer range to this request.
      • add

        public void add​(float min,
                        float max)
        Add a floating point range to this request.
      • add

        public void add​(java.lang.String label,
                        float min,
                        float max)
        Add a floating point range to this request.
      • add

        public void add​(double min,
                        double max)
        Add a double precision floating point range to this request.
      • add

        public void add​(java.lang.String label,
                        double min,
                        double max)
        Add a double precision floating point range to this request.
      • addParameters

        protected int addParameters​(java.lang.StringBuilder buffer,
                                    int index)
        Overrides:
        addParameters in class FacetRequest
      • equals

        public boolean equals​(java.lang.Object other)
        Overrides:
        equals in class FacetRequest