Top Description Fields Constructors Methods
org.hibernate.validator.internal.engine

public Class ServiceLoaderBasedConstraintMappingContributor

extends Object
implements ConstraintMappingContributor
Class Inheritance
All Implemented Interfaces
org.hibernate.validator.spi.cfg.ConstraintMappingContributor
Static Imports
org.hibernate.validator.internal.util.CollectionHelper.newHashMap

Contributor of constraint definitions discovered by the Java service loader mechanism.
Author
Hardy Ferentschik

Field Summary

Modifier and TypeField and Description
private final ClassLoader
primaryClassLoader

The primary class loader passed to the ServiceLoader.

private final TypeResolutionHelper
typeResolutionHelper

Used for resolving type parameters.

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public void
createConstraintMappings(ConstraintMappingContributor.ConstraintMappingBuilder
A builder for adding one or more constraint mappings
builder
)

Implements org.hibernate.validator.spi.cfg.ConstraintMappingContributor.createConstraintMappings.

Callback invoked during validator factory creation.
private Class<?>
determineAnnotationType(Class<? extends ConstraintValidator<A extends Annotation, T>> constraintValidatorClass)

private <A extends Annotation> void
registerConstraintDefinition(ConstraintMapping constraintMapping, Class<?> constraintType, List<Class<?>> validatorTypes)

private <T> T
run(PrivilegedAction<T> action)

Runs the given privileged action, using a privileged block if required.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

primaryClassLoaderback to summary
private final ClassLoader primaryClassLoader

The primary class loader passed to the ServiceLoader.

Tries this one then tries the class loader used to load Hibernate Validator classes.

typeResolutionHelperback to summary
private final TypeResolutionHelper typeResolutionHelper

Used for resolving type parameters. Thread-safe.

Constructor Detail

ServiceLoaderBasedConstraintMappingContributorback to summary
public ServiceLoaderBasedConstraintMappingContributor(TypeResolutionHelper typeResolutionHelper, ClassLoader primaryClassLoader)

Method Detail

createConstraintMappingsback to summary
public void createConstraintMappings(ConstraintMappingContributor.ConstraintMappingBuilder builder)

Implements org.hibernate.validator.spi.cfg.ConstraintMappingContributor.createConstraintMappings.

Doc from org.hibernate.validator.spi.cfg.ConstraintMappingContributor.createConstraintMappings.

Callback invoked during validator factory creation. Any constraint mapping configured via the passed builder will be added to the mappings of the factory.

Parameters
builder:ConstraintMappingContributor.ConstraintMappingBuilder

A builder for adding one or more constraint mappings

Annotations
@SuppressWarnings:rawtypes
@Override
determineAnnotationTypeback to summary
private Class<?> determineAnnotationType(Class<? extends ConstraintValidator<A extends Annotation, T>> constraintValidatorClass)
Annotations
@SuppressWarnings:rawtypes
registerConstraintDefinitionback to summary
private <A extends Annotation> void registerConstraintDefinition(ConstraintMapping constraintMapping, Class<?> constraintType, List<Class<?>> validatorTypes)
Annotations
@SuppressWarnings:unchecked
runback to summary
private <T> T run(PrivilegedAction<T> action)

Runs the given privileged action, using a privileged block if required.

Note

This must never be changed into a publicly available method to avoid execution of arbitrary privileged actions within HV's protection domain.

Annotations
@IgnoreForbiddenApisErrors
reason:SecurityManager is deprecated in JDK17