-
- All Superinterfaces:
- ElementDescriptor
public interface BeanDescriptor extends ElementDescriptor
Describes a constrained Java Bean and the constraints associated to it. All objects returned by the methods of this descriptor (and associated objects includingConstraintDescriptor
s) are immutable.- Author:
- Emmanuel Bernard, Gunnar Morling
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface javax.validation.metadata.ElementDescriptor
ElementDescriptor.ConstraintFinder
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method and Description Set<ConstructorDescriptor>
getConstrainedConstructors()
Returns a set with descriptors for the constrained constructors of the bean represented by this descriptor.Set<MethodDescriptor>
getConstrainedMethods(MethodType methodType, MethodType... methodTypes)
Returns a set with descriptors for the constrained methods of the bean represented by this descriptor.Set<PropertyDescriptor>
getConstrainedProperties()
Returns a set of property descriptors having at least one constraint defined or marked as cascaded (Valid
).ConstructorDescriptor
getConstraintsForConstructor(Class<?>... parameterTypes)
Returns a constructor descriptor for the given constructor.MethodDescriptor
getConstraintsForMethod(String methodName, Class<?>... parameterTypes)
Returns a method descriptor for the given method.PropertyDescriptor
getConstraintsForProperty(String propertyName)
Returns the property descriptor for a given property.boolean
isBeanConstrained()
Returnstrue
if the bean involves validation: a constraint is hosted on the bean itself a constraint is hosted on one of the bean properties or a bean property is marked for cascaded validation (Valid
) Constrained methods and constructors are ignored.-
Methods inherited from interface javax.validation.metadata.ElementDescriptor
findConstraints, getConstraintDescriptors, getElementClass, hasConstraints
-
-
-
-
Method Detail
-
isBeanConstrained
boolean isBeanConstrained()
Returnstrue
if the bean involves validation:- a constraint is hosted on the bean itself
- a constraint is hosted on one of the bean properties
- or a bean property is marked for cascaded validation (
Valid
)
- Returns:
true
if the bean involves validation,false
otherwise
-
getConstraintsForProperty
PropertyDescriptor getConstraintsForProperty(String propertyName)
Returns the property descriptor for a given property. Returnsnull
if the property does not exist or has no constraint nor is marked as cascaded (seegetConstrainedProperties()
) Properties of super types are considered.- Parameters:
propertyName
- property evaluated- Returns:
- the property descriptor for a given property
- Throws:
IllegalArgumentException
- ifpropertyName
isnull
-
getConstrainedProperties
Set<PropertyDescriptor> getConstrainedProperties()
Returns a set of property descriptors having at least one constraint defined or marked as cascaded (Valid
). If not property matches, an empty set is returned. Properties of super types are considered.- Returns:
- the set of
PropertyDescriptor
s for the constraint properties; if there are no constraint properties, the empty set is returned
-
getConstraintsForMethod
MethodDescriptor getConstraintsForMethod(String methodName, Class<?>... parameterTypes)
Returns a method descriptor for the given method. Returnsnull
if no method with the given name and parameter types exists or the specified method neither has parameter or return value constraints nor a parameter or return value marked for cascaded validation. Methods of super types are considered.- Parameters:
methodName
- the name of the methodparameterTypes
- the parameter types of the method- Returns:
- a method descriptor for the given method
- Throws:
IllegalArgumentException
- ifmethodName
isnull
- Since:
- 1.1
-
getConstrainedMethods
Set<MethodDescriptor> getConstrainedMethods(MethodType methodType, MethodType... methodTypes)
Returns a set with descriptors for the constrained methods of the bean represented by this descriptor. Constrained methods have at least one parameter or return value constraint or at least one parameter or return value marked for cascaded validation. Methods of super types are considered. Only methods matching the given method type(s) are considered.- Parameters:
methodType
- method type to considermethodTypes
- remaining optional method types to consider- Returns:
- a set with descriptors for the constrained methods of this bean;
will be empty if this bean has no constrained methods of the considered
method type(s) but never
null
- Since:
- 1.1
-
getConstraintsForConstructor
ConstructorDescriptor getConstraintsForConstructor(Class<?>... parameterTypes)
Returns a constructor descriptor for the given constructor. Returnsnull
if no constructor with the given parameter types exists or the specified constructor neither has parameter or return value constraints nor a parameter or return value marked for cascaded validation. Constructor of super types are considered.- Parameters:
parameterTypes
- the parameter types of the constructor- Returns:
- a constructor descriptor for the given constructor
- Since:
- 1.1
-
getConstrainedConstructors
Set<ConstructorDescriptor> getConstrainedConstructors()
Returns a set with descriptors for the constrained constructors of the bean represented by this descriptor. Constrained constructors have at least one parameter or return value constraint or at least one parameter or return value marked for cascaded validation.- Returns:
- a set with descriptors for the constrained constructor of this
bean; will be empty if this bea has no constrained constructor
but never
null
- Since:
- 1.1
-
-
Document created the 11/06/2005, last modified the 18/08/2025
Source of the printed document:https://www.gaudry.be/en/java-api-javaee-rf-javax/validation/metadata/BeanDescriptor.html
The infobrol is a personal site whose content is my sole responsibility. The text is available under CreativeCommons license (BY-NC-SA). More info on the terms of use and the author.
References
These references and links indicate documents consulted during the writing of this page, or which may provide additional information, but the authors of these sources can not be held responsible for the content of this page.
The author of this site is solely responsible for the way in which the various concepts, and the freedoms that are taken with the reference works, are presented here. Remember that you must cross multiple source information to reduce the risk of errors.