Class MetaDataBuilder
java.lang.Object
org.hibernate.validator.internal.metadata.aggregated.MetaDataBuilder
- Direct Known Subclasses:
ClassMetaData.Builder
,ExecutableMetaData.Builder
,ParameterMetaData.Builder
,PropertyMetaData.Builder
Builds
ConstraintMetaData
instances for the
ConstrainedElement
objects representing one method or property in a
type's inheritance hierarchy.- Author:
- Gunnar Morling
-
Field Summary
-
Constructor Summary
ModifierConstructorDescriptionprotected
MetaDataBuilder
(Class<?> beanClass, ConstraintCreationContext constraintCreationContext) -
Method Summary
Modifier and TypeMethodDescriptionabstract boolean
accepts
(ConstrainedElement constrainedElement) Whether this builder allows to add the given element or not.protected Set<MetaConstraint<?>>
adaptConstraints
(ConstrainedElement constrainedElement, Set<MetaConstraint<?>> constraints) Allows specific sub-classes to customize the retrieved constraints.protected Set<MetaConstraint<?>>
adaptOriginsAndImplicitGroups
(Set<MetaConstraint<?>> constraints) Adapts the given constraints to the given bean type.void
add
(ConstrainedElement constrainedElement) Adds the given element to this builder.abstract ConstraintMetaData
build()
Creates a new, read-onlyConstraintMetaData
object with all constraint information related to the method or property represented by this builder.protected Class<?>
Set<MetaConstraint<?>>
protected Set<MetaConstraint<?>>
protected boolean
-
Field Details
-
constraintCreationContext
-
-
Constructor Details
-
MetaDataBuilder
-
-
Method Details
-
accepts
Whether this builder allows to add the given element or not. This is the case if the specified element relates to the same property or method with which this builder was instantiated.- Parameters:
constrainedElement
- The element to check.- Returns:
true
if the given element can be added to this builder,false
otherwise.
-
add
Adds the given element to this builder. It must be checked withaccepts(ConstrainedElement)
before, whether this is allowed or not.- Parameters:
constrainedElement
- The element to add.
-
build
Creates a new, read-onlyConstraintMetaData
object with all constraint information related to the method or property represented by this builder.- Returns:
- A
ConstraintMetaData
object.
-
getDirectConstraints
-
getContainerElementConstraints
-
isCascading
protected boolean isCascading() -
getBeanClass
-
adaptOriginsAndImplicitGroups
Adapts the given constraints to the given bean type. In case a constraint is defined locally at the bean class the original constraint will be returned without any modifications. If a constraint is defined in the hierarchy (interface or super class) a new constraint will be returned with an origin ofConstraintOrigin.DEFINED_IN_HIERARCHY
. If a constraint is defined on an interface, the interface type will additionally be part of the constraint's groups (implicit grouping).- Parameters:
constraints
- The constraints that shall be adapted. The constraints themselves will not be altered.- Returns:
- A constraint adapted to the given bean type.
-
adaptConstraints
protected Set<MetaConstraint<?>> adaptConstraints(ConstrainedElement constrainedElement, Set<MetaConstraint<?>> constraints) Allows specific sub-classes to customize the retrieved constraints.
-