Class PotentiallyContainerCascadingMetaData
java.lang.Object
org.hibernate.validator.internal.metadata.aggregated.PotentiallyContainerCascadingMetaData
- All Implemented Interfaces:
CascadingMetaData
A simplified view of the cascading validation metadata for a potentially container element at runtime.
Has a set of possible
ValueExtractorDescriptors that might be applied to a potential runtime type.- Author:
- Guillaume Smet, Marko Bekhta
-
Method Summary
Modifier and TypeMethodDescriptionaddRuntimeContainerSupport(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>
TClass<?>convertGroup(Class<?> originalGroup) TypeVariable<?>booleanbooleanbooleanof(CascadingMetaDataBuilder cascadingMetaDataBuilder, Set<ValueExtractorDescriptor> potentialValueExtractorDescriptors, Object context) toString()
-
Method Details
-
of
public static PotentiallyContainerCascadingMetaData of(CascadingMetaDataBuilder cascadingMetaDataBuilder, Set<ValueExtractorDescriptor> potentialValueExtractorDescriptors, Object context) -
getTypeParameter
- Specified by:
getTypeParameterin interfaceCascadingMetaData
-
isCascading
public boolean isCascading()- Specified by:
isCascadingin interfaceCascadingMetaData
-
isMarkedForCascadingOnAnnotatedObjectOrContainerElements
public boolean isMarkedForCascadingOnAnnotatedObjectOrContainerElements()- Specified by:
isMarkedForCascadingOnAnnotatedObjectOrContainerElementsin interfaceCascadingMetaData
-
convertGroup
- Specified by:
convertGroupin interfaceCascadingMetaData
-
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
- Specified by:
asin interfaceCascadingMetaData
-
toString
-