A - the type of annotations processedpublic interface ConstraintAnnotationProcessor<A extends Annotation>
Annotations made for this type of processor should
specifically target ElementType.TYPE_USE.
AnnotatedSettings.Builder#registerConstraintProcessor(Class, ConstraintAnnotationProcessor)| Modifier and Type | Method and Description |
|---|---|
default <T> BooleanConfigType<T> |
processBoolean(BooleanConfigType<T> baseType,
A annotation,
AnnotatedElement annotated) |
default <T> NumberConfigType<T> |
processDecimal(NumberConfigType<T> baseType,
A annotation,
AnnotatedElement annotated)
Called for every type use site (field or generics) that has an annotation of type
A. |
default <T> EnumConfigType<T> |
processEnum(EnumConfigType<T> baseType,
A annotation,
AnnotatedElement annotated) |
default <T,E> ListConfigType<T,E> |
processList(ListConfigType<T,E> baseType,
A annotation,
AnnotatedElement annotated)
Called for every type use site (field or generics) that has an annotation of type
A. |
default <R,V> MapConfigType<R,V> |
processMap(MapConfigType<R,V> baseType,
A annotation,
AnnotatedElement annotated) |
default <R> RecordConfigType<R> |
processRecord(RecordConfigType<R> baseType,
A annotation,
AnnotatedElement annotated) |
default <T> StringConfigType<T> |
processString(StringConfigType<T> baseType,
A annotation,
AnnotatedElement annotated)
Called for every type use site (field or generics) that has an annotation of type
A. |
default <T> NumberConfigType<T> processDecimal(NumberConfigType<T> baseType, A annotation, AnnotatedElement annotated)
A.T - the type of values processedbaseType - the type being constrainedannotation - the annotation present on the annotated elementannotated - an annotated type use site declared in pojo's classAnnotatedSettings.applyToNode(ConfigTree, Object)default <T> StringConfigType<T> processString(StringConfigType<T> baseType, A annotation, AnnotatedElement annotated)
A.T - the type of values processedbaseType - the type being constrainedannotation - the annotation present on the annotated elementannotated - an annotated type use site declared in pojo's classAnnotatedSettings.applyToNode(ConfigTree, Object)default <T,E> ListConfigType<T,E> processList(ListConfigType<T,E> baseType, A annotation, AnnotatedElement annotated)
A.T - the type of values processedbaseType - the type being constrainedannotation - the annotation present on the annotated elementannotated - an annotated type use site declared in pojo's classAnnotatedSettings.applyToNode(ConfigTree, Object)default <T> EnumConfigType<T> processEnum(EnumConfigType<T> baseType, A annotation, AnnotatedElement annotated)
default <R> RecordConfigType<R> processRecord(RecordConfigType<R> baseType, A annotation, AnnotatedElement annotated)
default <T> BooleanConfigType<T> processBoolean(BooleanConfigType<T> baseType, A annotation, AnnotatedElement annotated)
default <R,V> MapConfigType<R,V> processMap(MapConfigType<R,V> baseType, A annotation, AnnotatedElement annotated)