Package jakarta.validation
Interface ConstraintValidator<A extends Annotation,T>
- 
- Type Parameters:
 A- the annotation type handled by an implementationT- the target type supported by an implementation
public interface ConstraintValidator<A extends Annotation,T>Defines the logic to validate a given constraintAfor a given object typeT.Implementations must comply to the following restriction:
Tmust resolve to a non parameterized type- or generic parameters of 
Tmust be unbounded wildcard types 
The annotation
SupportedValidationTargetcan be put on aConstraintValidatorimplementation to mark it as supporting cross-parameter constraints. Check outSupportedValidationTargetandConstraintfor more information.- Author:
 - Emmanuel Bernard, Hardy Ferentschik
 
 
- 
- 
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default voidinitialize(A constraintAnnotation)Initializes the validator in preparation forisValid(Object, ConstraintValidatorContext)calls.booleanisValid(T value, ConstraintValidatorContext context)Implements the validation logic. 
 - 
 
- 
- 
Method Detail
- 
initialize
default void initialize(A constraintAnnotation)
Initializes the validator in preparation forisValid(Object, ConstraintValidatorContext)calls. The constraint annotation for a given constraint declaration is passed.This method is guaranteed to be called before any use of this instance for validation.
The default implementation is a no-op.
- Parameters:
 constraintAnnotation- annotation instance for a given constraint declaration
 
- 
isValid
boolean isValid(T value, ConstraintValidatorContext context)
Implements the validation logic. The state ofvaluemust not be altered.This method can be accessed concurrently, thread-safety must be ensured by the implementation.
- Parameters:
 value- object to validatecontext- context in which the constraint is evaluated- Returns:
 falseifvaluedoes not pass the constraint
 
 - 
 
 -