spring-framework/spring-core
Sam Brannen 8265db0ae1 Avoid synthesizing annotations unnecessarily
Commit 31fa1569c5 introduced initial support for avoiding unnecessary
annotation synthesis in the MergedAnnotation API; however, it only
avoided synthesis for annotations that do not declare any attributes.

This commit reworks this support to avoid unnecessary annotation
synthesis for annotations that declare attributes.

Specifically, this commit introduces a new `isSynthesizable()` method
in AnnotationTypeMapping that allows the "synthesizable" flag to be
computed once and cached along with the other metadata already cached
in AnnotationTypeMapping instances. TypeMappedAnnotation now delegates
to this new method when determining whether it should synthesize an
annotation.

Closes gh-24861
2020-04-23 19:09:30 +02:00
..
kotlin-coroutines Refine Coroutines annotated controller support 2019-11-22 14:13:17 +01:00
src Avoid synthesizing annotations unnecessarily 2020-04-23 19:09:30 +02:00
spring-core.gradle BlockHoundIntegration for spring-core 2020-02-24 17:19:32 +00:00