Package com.vaadin.data.validator
Class AbstractValidator<T>
- java.lang.Object
-
- com.vaadin.data.validator.AbstractValidator<T>
-
- Type Parameters:
T- The value type
- All Implemented Interfaces:
Validator<T>,Serializable,BiFunction<T,ValueContext,ValidationResult>
- Direct Known Subclasses:
RangeValidator,RegexpValidator,StringLengthValidator
public abstract class AbstractValidator<T> extends Object implements Validator<T>
An abstract base class for typed validators.- Since:
- 8.0
- Author:
- Vaadin Ltd.
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractValidator(String errorMessage)Constructs a validator with the given error message.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected StringgetMessage(T value)Returns the error message for the given value.protected ValidationResulttoResult(T value, boolean isValid)A helper method for creating aResultfrom a value and a validity flag.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface java.util.function.BiFunction
andThen
-
-
-
-
Constructor Detail
-
AbstractValidator
protected AbstractValidator(String errorMessage)
Constructs a validator with the given error message. The substring "{0}" is replaced by the value that failed validation.- Parameters:
errorMessage- the message to be included in a failed result, not null
-
-
Method Detail
-
getMessage
protected String getMessage(T value)
Returns the error message for the given value.- Parameters:
value- an invalid value- Returns:
- the formatted error message
-
toResult
protected ValidationResult toResult(T value, boolean isValid)
A helper method for creating aResultfrom a value and a validity flag. If the flag is true, returnsResult.ok, otherwise yieldsResult.errorbearing the error message returned bygetMessage(Object).For instance, the following
applymethod only accepts even numbers:@Override public Result<T> apply(Integer value) { return toResult(value, value % 2 == 0); }- Parameters:
value- the validated valueisValid- whether the value is valid or not- Returns:
- the validation result
-
-