Interface RangePredicateMatchingGenericStep<T,N extends RangePredicateOptionsStep<?>>

Type Parameters:
T - The type of the boundary values.
N - The type of the next step.
All Known Subinterfaces:
RangePredicateFieldMoreGenericStep<SR,S,N,V,T>, RangePredicateFieldMoreStep<SR,S,N>, RangePredicateMatchingStep<N>

public interface RangePredicateMatchingGenericStep<T,N extends RangePredicateOptionsStep<?>>
The step in a "range" predicate definition where the range to match can be set.
  • Method Summary

    Modifier and Type
    Method
    Description
    default N
    atLeast(T lowerBoundValue)
    Require at least one of the targeted fields to be "greater than or equal to" the given value, with no limit as to how high it can be.
    default N
    atMost(T upperBoundValue)
    Require at least one of the targeted fields to be "lesser than or equal to" the given value, with no limit as to how low it can be.
    default N
    between(T lowerBound, RangeBoundInclusion lowerBoundInclusion, T upperBound, RangeBoundInclusion upperBoundInclusion)
    Require at least one of the targeted fields to be in the range defined by the given bounds.
    default N
    between(T lowerBound, T upperBound)
    Require at least one of the targeted fields to be in the range defined by the given bounds.
    default N
    greaterThan(T lowerBoundValue)
    Require at least one of the targeted fields to be "strictly greater than" the given value, with no limit as to how high it can be.
    default N
    lessThan(T upperBoundValue)
    Require at least one of the targeted fields to be "lesser than" the given value, with no limit as to how low it can be.
    within(Range<? extends T> range)
    Require at least one of the targeted fields to be in the given range.
    default N
    withinAny(Collection<? extends Range<?>> ranges)
    Require at least one of the targeted fields to be in any of the given ranges.
    withinAny(Collection<? extends Range<?>> ranges, ValueModel valueModel)
    Require at least one of the targeted fields to be in any of the given ranges.
    default N
    withinAny(Range<?>... ranges)
    Require at least one of the targeted fields to be in any of the given ranges.
  • Method Details

    • between

      default N between(T lowerBound, T upperBound)
      Require at least one of the targeted fields to be in the range defined by the given bounds.
      Parameters:
      lowerBound - The lower bound of the range. null means -Infinity (no lower bound). The signature of this method defines this parameter as an Object, but a specific type is expected depending on the targeted field.
      upperBound - The upper bound of the range. null means +Infinity (no upper bound). The signature of this method defines this parameter as an Object, but a specific type is expected depending on the targeted field.
      Returns:
      The next step.
    • between

      default N between(T lowerBound, RangeBoundInclusion lowerBoundInclusion, T upperBound, RangeBoundInclusion upperBoundInclusion)
      Require at least one of the targeted fields to be in the range defined by the given bounds.
      Parameters:
      lowerBound - The lower bound of the range. null means -Infinity (no lower bound). The signature of this method defines this parameter as an Object, but a specific type is expected depending on the targeted field.
      lowerBoundInclusion - Whether the lower bound is included in the range or excluded.
      upperBound - The upper bound of the range. null means +Infinity (no upper bound). The signature of this method defines this parameter as an Object, but a specific type is expected depending on the targeted field.
      upperBoundInclusion - Whether the upper bound is included in the range or excluded.
      Returns:
      The next step.
    • atLeast

      default N atLeast(T lowerBoundValue)
      Require at least one of the targeted fields to be "greater than or equal to" the given value, with no limit as to how high it can be.
      Parameters:
      lowerBoundValue - The lower bound of the range, included. Must not be null. The signature of this method defines this parameter as an Object, but a specific type is expected depending on the targeted field.
      Returns:
      The next step.
    • greaterThan

      default N greaterThan(T lowerBoundValue)
      Require at least one of the targeted fields to be "strictly greater than" the given value, with no limit as to how high it can be.
      Parameters:
      lowerBoundValue - The lower bound of the range, excluded. Must not be null. The signature of this method defines this parameter as an Object, but a specific type is expected depending on the targeted field.
      Returns:
      The next step.
    • atMost

      default N atMost(T upperBoundValue)
      Require at least one of the targeted fields to be "lesser than or equal to" the given value, with no limit as to how low it can be.
      Parameters:
      upperBoundValue - The upper bound of the range, included. Must not be null. The signature of this method defines this parameter as an Object, but a specific type is expected depending on the targeted field.
      Returns:
      The next step.
    • lessThan

      default N lessThan(T upperBoundValue)
      Require at least one of the targeted fields to be "lesser than" the given value, with no limit as to how low it can be.
      Parameters:
      upperBoundValue - The upper bound of the range, excluded. Must not be null. The signature of this method defines this parameter as an Object, but a specific type is expected depending on the targeted field.
      Returns:
      The next step.
    • within

      N within(Range<? extends T> range)
      Require at least one of the targeted fields to be in the given range.
      Parameters:
      range - The range to match. The signature of this method defines this parameter as a range with bounds of any type, but a specific type is expected depending on the targeted field.
      Returns:
      The next step.
    • withinAny

      default N withinAny(Range<?>... ranges)
      Require at least one of the targeted fields to be in any of the given ranges.
      Parameters:
      ranges - The ranges to match. The signature of this method defines this parameter as a range with bounds of any type, but a specific type is expected depending on the targeted field. See ValueModel.MAPPING for more information.
      Returns:
      The next step.
    • withinAny

      default N withinAny(Collection<? extends Range<?>> ranges)
      Require at least one of the targeted fields to be in any of the given ranges.
      Parameters:
      ranges - The ranges to match. The signature of this method defines this parameter as a range with bounds of any type, but a specific type is expected depending on the targeted field. See ValueModel.MAPPING for more information.
      Returns:
      The next step.
    • withinAny

      N withinAny(Collection<? extends Range<?>> ranges, ValueModel valueModel)
      Require at least one of the targeted fields to be in any of the given ranges.
      Parameters:
      ranges - The ranges to match. The signature of this method defines this parameter as a range with bounds of any type, but a specific type is expected depending on the targeted field and on the valueModel parameter. See ValueModel for more information.
      valueModel - The model value, determines how the range bounds should be converted before Hibernate Search attempts to interpret them as a field value. See ValueModel for more information.
      Returns:
      The next step.