You're viewing an older version of Vaadin JavaDoc. Please see version 24.7.0 for the latest.
com.vaadin.flow.data.validator.

Class RangeValidator<T>

    • Constructor Detail

      • RangeValidator

        public RangeValidator​(String errorMessage,
                              Comparator<? super T> comparator,
                              T minValue,
                              T maxValue)

        Creates a new range validator of the given type. Passing null to either minValue or maxValue means there is no limit in that direction. Both limits may be null; this can be useful if the limits are resolved programmatically. The result of passing null to apply depends on the given comparator.

        Parameters:

        errorMessage - the error message to return if validation fails, not null

        comparator - the comparator to compare with, not null

        minValue - the least value of the accepted range or null for no limit

        maxValue - the greatest value of the accepted range or null for no limit

    • Method Detail

      • of

        public static <C extends Comparable<? super C>> RangeValidator<C> of​(String errorMessage,
                                                                             C minValue,
                                                                             C maxValue)

        Returns a RangeValidator comparing values of a Comparable type using their natural order. Passing null to either minValue or maxValue means there is no limit in that direction. Both limits may be null; this can be useful if the limits are resolved programmatically.

        Null is considered to be less than any non-null value. This means null never passes validation if a minimum value is specified.

        Type Parameters:

        C - the Comparable value type

        Parameters:

        errorMessage - the error message to return if validation fails, not null

        minValue - the least value of the accepted range or null for no limit

        maxValue - the greatest value of the accepted range or null for no limit

        Returns:

        the new validator

      • apply

        public ValidationResult apply​(T value,
                                      ValueContext context)

        Returns Result.ok if the value is within the specified bounds, Result.error otherwise. If null is passed to apply, the behavior depends on the used comparator.

        Parameters:

        value - the input value to validate

        context - the value context for validation

        Returns:

        the validation result

      • isMinValueIncluded

        public boolean isMinValueIncluded()

        Returns whether the minimum value is part of the accepted range.

        Returns:

        true if the minimum value is part of the range, false otherwise

      • setMinValueIncluded

        public void setMinValueIncluded​(boolean minValueIncluded)

        Sets whether the minimum value is part of the accepted range.

        Parameters:

        minValueIncluded - true if the minimum value should be part of the range, false otherwise

      • isMaxValueIncluded

        public boolean isMaxValueIncluded()

        Returns whether the maximum value is part of the accepted range.

        Returns:

        true if the maximum value is part of the range, false otherwise

      • setMaxValueIncluded

        public void setMaxValueIncluded​(boolean maxValueIncluded)

        Sets whether the maximum value is part of the accepted range.

        Parameters:

        maxValueIncluded - true if the maximum value should be part of the range, false otherwise

      • getMinValue

        public T getMinValue()

        Returns the minimum value of the range.

        Returns:

        the minimum value

      • setMinValue

        public void setMinValue​(T minValue)

        Sets the minimum value of the range. Use setMinValueIncluded(boolean) to control whether this value is part of the range or not.

        Parameters:

        minValue - the minimum value

      • getMaxValue

        public T getMaxValue()

        Gets the maximum value of the range.

        Returns:

        the maximum value

      • setMaxValue

        public void setMaxValue​(T maxValue)

        Sets the maximum value of the range. Use setMaxValueIncluded(boolean) to control whether this value is part of the range or not.

        Parameters:

        maxValue - the maximum value

      • isValid

        protected boolean isValid​(T value)

        Returns whether the given value lies in the valid range.

        Parameters:

        value - the value to validate

        Returns:

        true if the value is valid, false otherwise