Package javax.validation
Interface ConstraintValidator<A extends Annotation,T>
public interface ConstraintValidator<A extends Annotation,T>
Defines the logic to validate a given constraint
A
for a given object type T.
Implementations must comply to the following restriction:
Tmust resolve to a non parameterized type- or generic parameters of
Tmust be unbounded wildcard types
SupportedValidationTarget can be put on a
ConstraintValidator implementation to mark it as supporting
cross-parameter constraints. Check out SupportedValidationTarget
and Constraint for more information.-
Method Summary
Modifier and TypeMethodDescriptionvoidinitialize(A constraintAnnotation) Initializes the validator in preparation forisValid(Object, ConstraintValidatorContext)calls.booleanisValid(T value, ConstraintValidatorContext context) Implements the validation logic.
-
Method Details
-
initialize
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.- Parameters:
constraintAnnotation- annotation instance for a given constraint declaration
-
isValid
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
-