/*
 * Hibernate Validator, declare and validate application constraints
 *
 * License: Apache License, Version 2.0
 * See the license.txt file in the root directory or <http://www.apache.org/licenses/LICENSE-2.0>.
 */
package org.hibernate.validator.internal.engine.constraintvalidation;

import java.lang.annotation.Annotation;
import java.lang.reflect.Type;

import jakarta.validation.ConstraintValidator;
import jakarta.validation.ConstraintValidatorFactory;

import org.hibernate.validator.constraintvalidation.HibernateConstraintValidatorInitializationContext;
import org.hibernate.validator.internal.metadata.descriptor.ConstraintDescriptorImpl;

Manager in charge of providing and caching initialized ConstraintValidator instances.
Author:Hardy Ferentschik
/** * Manager in charge of providing and caching initialized {@code ConstraintValidator} instances. * * @author Hardy Ferentschik */
public interface ConstraintValidatorManager {
Params:
  • validatedValueType – the type of the value to be validated. Cannot be null.
  • descriptor – the constraint descriptor for which to get an initialized constraint validator. Cannot be null
  • constraintValidatorFactory – constraint factory used to instantiate the constraint validator. Cannot be null.
  • initializationContext – context used on constraint validator initialization
Type parameters:
  • <A> – the annotation type
Returns:an initialized constraint validator for the given type and annotation of the value to be validated. null is returned if no matching constraint validator could be found.
/** * @param validatedValueType the type of the value to be validated. Cannot be {@code null}. * @param descriptor the constraint descriptor for which to get an initialized constraint validator. Cannot be {@code null} * @param constraintValidatorFactory constraint factory used to instantiate the constraint validator. Cannot be {@code null}. * @param initializationContext context used on constraint validator initialization * @param <A> the annotation type * * @return an initialized constraint validator for the given type and annotation of the value to be validated. * {@code null} is returned if no matching constraint validator could be found. */
<A extends Annotation> ConstraintValidator<A, ?> getInitializedValidator( Type validatedValueType, ConstraintDescriptorImpl<A> descriptor, ConstraintValidatorFactory constraintValidatorFactory, HibernateConstraintValidatorInitializationContext initializationContext); void clear(); ConstraintValidatorFactory getDefaultConstraintValidatorFactory(); HibernateConstraintValidatorInitializationContext getDefaultConstraintValidatorInitializationContext(); boolean isPredefinedScope(); }