Class TermRangeFilter

    • Constructor Detail

      • TermRangeFilter

        public TermRangeFilter​(String fieldName,
                               String lowerTerm,
                               String upperTerm,
                               boolean includeLower,
                               boolean includeUpper)
        Parameters:
        fieldName - The field this range applies to
        lowerTerm - The lower bound on this range
        upperTerm - The upper bound on this range
        includeLower - Does this range include the lower bound?
        includeUpper - Does this range include the upper bound?
        Throws:
        IllegalArgumentException - if both terms are null or if lowerTerm is null and includeLower is true (similar for upperTerm and includeUpper)
      • TermRangeFilter

        public TermRangeFilter​(String fieldName,
                               String lowerTerm,
                               String upperTerm,
                               boolean includeLower,
                               boolean includeUpper,
                               Collator collator)
        WARNING: Using this constructor and supplying a non-null value in the collator parameter will cause every single index Term in the Field referenced by lowerTerm and/or upperTerm to be examined. Depending on the number of index Terms in this Field, the operation could be very slow.
        Parameters:
        lowerTerm - The lower bound on this range
        upperTerm - The upper bound on this range
        includeLower - Does this range include the lower bound?
        includeUpper - Does this range include the upper bound?
        collator - The collator to use when determining range inclusion; set to null to use Unicode code point ordering instead of collation.
        Throws:
        IllegalArgumentException - if both terms are null or if lowerTerm is null and includeLower is true (similar for upperTerm and includeUpper)
    • Method Detail

      • Less

        public static TermRangeFilter Less​(String fieldName,
                                           String upperTerm)
        Constructs a filter for field fieldName matching less than or equal to upperTerm.
      • More

        public static TermRangeFilter More​(String fieldName,
                                           String lowerTerm)
        Constructs a filter for field fieldName matching greater than or equal to lowerTerm.
      • getField

        public String getField()
        Returns the field name for this filter
      • getLowerTerm

        public String getLowerTerm()
        Returns the lower value of this range filter
      • getUpperTerm

        public String getUpperTerm()
        Returns the upper value of this range filter
      • includesLower

        public boolean includesLower()
        Returns true if the lower endpoint is inclusive
      • includesUpper

        public boolean includesUpper()
        Returns true if the upper endpoint is inclusive
      • getCollator

        public Collator getCollator()
        Returns the collator used to determine range inclusion, if any.