Class PotentiallyContainerCascadingMetaData
- java.lang.Object
-
- org.hibernate.validator.internal.metadata.aggregated.PotentiallyContainerCascadingMetaData
-
- All Implemented Interfaces:
CascadingMetaData
public class PotentiallyContainerCascadingMetaData extends Object implements CascadingMetaData
A simplified view of the cascading validation metadata for a potentially container element at runtime. Has a set of possibleValueExtractorDescriptors that might be applied to a potential runtime type.- Author:
- Guillaume Smet, Marko Bekhta
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description CascadingMetaDataaddRuntimeContainerSupport(ValueExtractorManager valueExtractorManager, Class<?> valueClass)Add additional cascading metadata when: the element is marked with@Valid, the runtime type of the element is container based (e.g.<T extends CascadingMetaData>
Tas(Class<T> clazz)Class<?>convertGroup(Class<?> originalGroup)Set<GroupConversionDescriptor>getGroupConversionDescriptors()TypeVariable<?>getTypeParameter()booleanisCascading()booleanisContainer()booleanisMarkedForCascadingOnAnnotatedObjectOrContainerElements()static PotentiallyContainerCascadingMetaDataof(CascadingMetaDataBuilder cascadingMetaDataBuilder, Set<ValueExtractorDescriptor> potentialValueExtractorDescriptors, Object context)StringtoString()
-
-
-
Method Detail
-
of
public static PotentiallyContainerCascadingMetaData of(CascadingMetaDataBuilder cascadingMetaDataBuilder, Set<ValueExtractorDescriptor> potentialValueExtractorDescriptors, Object context)
-
getTypeParameter
public TypeVariable<?> getTypeParameter()
- Specified by:
getTypeParameterin interfaceCascadingMetaData
-
isCascading
public boolean isCascading()
- Specified by:
isCascadingin interfaceCascadingMetaData
-
isMarkedForCascadingOnAnnotatedObjectOrContainerElements
public boolean isMarkedForCascadingOnAnnotatedObjectOrContainerElements()
- Specified by:
isMarkedForCascadingOnAnnotatedObjectOrContainerElementsin interfaceCascadingMetaData
-
convertGroup
public Class<?> convertGroup(Class<?> originalGroup)
- Specified by:
convertGroupin interfaceCascadingMetaData
-
getGroupConversionDescriptors
public Set<GroupConversionDescriptor> getGroupConversionDescriptors()
- Specified by:
getGroupConversionDescriptorsin interfaceCascadingMetaData
-
isContainer
public boolean isContainer()
- Specified by:
isContainerin interfaceCascadingMetaData
-
addRuntimeContainerSupport
public CascadingMetaData addRuntimeContainerSupport(ValueExtractorManager valueExtractorManager, Class<?> valueClass)
Description copied from interface:CascadingMetaDataAdd additional cascading metadata when:- the element is marked with
@Valid, - the runtime type of the element is container based (e.g. collections, maps or arrays),
- and there are
ValueExtractors present for such container, - and the declared type isn't container based.
An example of this particular situation is:
@Valid private Object element = new ArrayList<String>().Note that if the declared type is container based, the cascading information is directly included at bootstrap time.
- Specified by:
addRuntimeContainerSupportin interfaceCascadingMetaData
- the element is marked with
-
as
public <T extends CascadingMetaData> T as(Class<T> clazz)
- Specified by:
asin interfaceCascadingMetaData
-
-