if ( annotationProcessingOptions.areParameterConstraintsIgnoredFor( executable.getMember(), i ) ) {
metaData.add(
new ConstrainedParameter(
ConfigurationSource.ANNOTATION,
new ExecutableConstraintLocation( executable, i ),
parameterName,
parameterConstraints,
getGroupConversions( groupConversion, groupConversionList ),
false
)
);
i++;
continue;
}
for ( Annotation parameterAnnotation : parameterAnnotations ) {
//1. collect constraints if this annotation is a constraint annotation
List<ConstraintDescriptorImpl<?>> constraints = findConstraintAnnotations(
executable.getMember(), parameterAnnotation, ElementType.PARAMETER
);
for ( ConstraintDescriptorImpl<?> constraintDescriptorImpl : constraints ) {
parameterConstraints.add(
createParameterMetaConstraint(
executable, i, constraintDescriptorImpl
)
);
}
//2. mark parameter as cascading if this annotation is the @Valid annotation
if ( parameterAnnotation.annotationType().equals( Valid.class ) ) {
parameterIsCascading = true;
}
//3. determine group conversions
else if ( parameterAnnotation.annotationType().equals( ConvertGroup.class ) ) {
groupConversion = (ConvertGroup) parameterAnnotation;
}
else if ( parameterAnnotation.annotationType().equals( ConvertGroup.List.class ) ) {
groupConversionList = (ConvertGroup.List) parameterAnnotation;
}
}
metaData.add(
new ConstrainedParameter(
ConfigurationSource.ANNOTATION,
new ExecutableConstraintLocation( executable, i ),
parameterName,
parameterConstraints,
getGroupConversions( groupConversion, groupConversionList ),
parameterIsCascading
)