A - the type of annotations processed@FunctionalInterface public static interface SettingAnnotationProcessor.Value<A extends java.lang.annotation.Annotation> extends SettingAnnotationProcessor<A,ConfigLeafBuilder<?>>
In effect, this is called for every field in a config POJO
class that is not annotated with Setting.Group or Setting.ignore().
Annotations made handled by these processors should
specifically target ElementType.FIELD.
AnnotatedSettings#registerSettingProcessor(Class, Value)SettingAnnotationProcessor.Group<A extends java.lang.annotation.Annotation>, SettingAnnotationProcessor.Value<A extends java.lang.annotation.Annotation>| Modifier and Type | Method and Description |
|---|---|
void |
apply(A annotation,
java.lang.reflect.Field field,
java.lang.Object pojo,
ConfigLeafBuilder<?> builder)
Called for every field that has an annotation of type
A. |
void apply(A annotation, java.lang.reflect.Field field, java.lang.Object pojo, ConfigLeafBuilder<?> builder)
SettingAnnotationProcessorA.apply in interface SettingAnnotationProcessor<A extends java.lang.annotation.Annotation,ConfigLeafBuilder<?>>annotation - the annotation present on the fieldfield - a field declared in pojo's classpojo - the plain old java object being processedbuilder - the builder being configuredAnnotatedSettings.applyToNode(ConfigTreeBuilder, Object)