diff --git a/spring-core/src/main/java/org/springframework/core/annotation/AnnotationUtils.java b/spring-core/src/main/java/org/springframework/core/annotation/AnnotationUtils.java index ebf091ad7a..3f7b85ecb6 100644 --- a/spring-core/src/main/java/org/springframework/core/annotation/AnnotationUtils.java +++ b/spring-core/src/main/java/org/springframework/core/annotation/AnnotationUtils.java @@ -1110,8 +1110,19 @@ public abstract class AnnotationUtils { } /** - * TODO Document isSynthesizable(). + * Determine if annotations of the supplied {@code annotationType} are + * synthesizable (i.e., in need of being wrapped in a dynamic + * proxy that provides functionality above that of a standard JDK + * annotation). + * + *

Specifically, an annotation is synthesizable if it declares + * any attributes that are configured as aliased pairs via + * {@link AliasFor @AliasFor} or if any nested annotations used by the + * annotation declare such aliased pairs. + * * @since 4.2 + * @see SynthesizedAnnotation + * @see SynthesizedAnnotationInvocationHandler */ @SuppressWarnings("unchecked") private static boolean isSynthesizable(Class annotationType) {