- 24 8月, 2018 1 次提交
-
-
由 Sam Brannen 提交于
-
- 15 8月, 2018 1 次提交
-
-
由 Juergen Hoeller 提交于
Includes caching of declared annotation arrays and combined searching for several annotation types (used in SpringCacheAnnotationParser). Issue: SPR-16933
-
- 09 8月, 2018 1 次提交
-
-
由 Juergen Hoeller 提交于
Includes Java 8 getDeclaredAnnotation shortcut for lookup on Class. Issue: SPR-17146
-
- 07 8月, 2018 1 次提交
-
-
由 Juergen Hoeller 提交于
Issue: SPR-16933
-
- 01 8月, 2018 3 次提交
-
-
由 Juergen Hoeller 提交于
Includes consistent (non-)use of AnnotationUtils/AnnotatedElementUtils. Issue: SPR-16933
-
由 Juergen Hoeller 提交于
-
由 Juergen Hoeller 提交于
This revision considers any java/javax and org.springframework.lang annotations as not synthesizable upfront, checking not only in isSynthesizable but also at synthesizeAnnotation(Array) level. Issue: SPR-16933
-
- 28 6月, 2018 1 次提交
-
-
由 Phillip Webb 提交于
Fix checkstyle violations for javadoc. Issue: SPR-16968
-
- 11 6月, 2018 1 次提交
-
-
由 Yun 提交于
Closes gh-1848
-
- 31 3月, 2018 2 次提交
-
-
由 Juergen Hoeller 提交于
Issue: SPR-16675
-
由 Juergen Hoeller 提交于
Issue: SPR-16667
-
- 12 3月, 2018 1 次提交
-
-
由 Juergen Hoeller 提交于
Issue: SPR-16564
-
- 19 2月, 2018 1 次提交
-
-
由 Juergen Hoeller 提交于
Issue: SPR-16514
-
- 23 9月, 2017 1 次提交
-
-
由 Juergen Hoeller 提交于
Based on IntelliJ IDEA 2017.3 introspection results. Issue: SPR-15756
-
- 30 6月, 2017 1 次提交
-
-
由 Juergen Hoeller 提交于
This commits extends nullability declarations to the field level, formalizing the interaction between methods and their underlying fields and therefore avoiding any nullability mismatch. Issue: SPR-15720
-
- 12 6月, 2017 1 次提交
-
-
由 diguage 提交于
See gh-1451
-
- 09 6月, 2017 1 次提交
-
-
由 Juergen Hoeller 提交于
This commit also removes nullability from two common spots: ResolvableType.getType() and TargetSource.getTarget(), both of which are never effectively null with any regular implementation. For such scenarios, a non-null empty type/target is the cleaner contract. Issue: SPR-15540
-
- 07 6月, 2017 1 次提交
-
-
由 Juergen Hoeller 提交于
Beyond just formally declaring the current behavior, this revision actually enforces non-null behavior in selected signatures now, not tolerating null values anymore when not explicitly documented. It also changes some utility methods with historic null-in/null-out tolerance towards enforced non-null return values, making them a proper citizen in non-null assignments. Some issues are left as to-do: in particular a thorough revision of spring-test, and a few tests with unclear failures (ignored as "TODO: NULLABLE") to be sorted out in a follow-up commit. Issue: SPR-15540
-
- 01 6月, 2017 1 次提交
-
-
由 Sebastien Deleuze 提交于
Issue: SPR-15540
-
- 31 5月, 2017 1 次提交
-
-
由 Sebastien Deleuze 提交于
Issue: SPR-15540
-
- 27 5月, 2017 1 次提交
-
-
由 Sebastien Deleuze 提交于
This commit introduces 2 new @Nullable and @NonNullApi annotations that leverage JSR 305 (dormant but available via Findbugs jsr305 dependency and already used by libraries like OkHttp) meta-annotations to specify explicitly null-safety of Spring Framework parameters and return values. In order to avoid adding too much annotations, the default is set at package level with @NonNullApi and @Nullable annotations are added when needed at parameter or return value level. These annotations are intended to be used on Spring Framework itself but also by other Spring projects. @Nullable annotations have been introduced based on Javadoc and search of patterns like "return null;". It is expected that nullability of Spring Framework API will be polished with complementary commits. In practice, this will make the whole Spring Framework API null-safe for Kotlin projects (when KT-10942 will be fixed) since Kotlin will be able to leverage these annotations to know if a parameter or a return value is nullable or not. But this is also useful for Java developers as well since IntelliJ IDEA, for example, also understands these annotations to generate warnings when unsafe nullable usages are detected. Issue: SPR-15540
-
- 06 4月, 2017 1 次提交
-
-
由 Juergen Hoeller 提交于
Issue: SPR-15387
-
- 13 2月, 2017 1 次提交
-
-
由 Juergen Hoeller 提交于
-
- 01 12月, 2016 1 次提交
-
-
由 Juergen Hoeller 提交于
Issue: SPR-12889
-
- 05 7月, 2016 2 次提交
-
-
由 Stephane Nicoll 提交于
Issue: SPR-13188
-
由 Juergen Hoeller 提交于
Issue: SPR-14430
-
- 07 6月, 2016 1 次提交
-
-
由 Juergen Hoeller 提交于
-
- 31 5月, 2016 1 次提交
-
-
由 Juergen Hoeller 提交于
Issue: SPR-14257
-
- 30 3月, 2016 1 次提交
-
-
由 Juergen Hoeller 提交于
-
- 25 3月, 2016 2 次提交
-
-
由 Sam Brannen 提交于
This commit introduces a boolean alwaysProcesses() method in the Processor API which allows for simplification across all search algorithms within AnnotatedElementUtils. Specifically, it is no longer necessary for process() methods to verify that the supplied annotation is actually the sought target annotation. In addition, duplicated code has been extracted into common methods (e.g., hasMetaAnnotationTypes()) and common Processor implementations (e.g., AlwaysTrueBooleanAnnotationProcessor).
-
由 Sam Brannen 提交于
This commit picks up where 25354690 left off with added support for "get" search semantics for merged repeatable annotations. Specifically, this commit introduces a new getMergedRepeatableAnnotations() method in AnnotatedElementUtils. Issue: SPR-13973
-
- 24 3月, 2016 5 次提交
-
-
由 Sam Brannen 提交于
This commit picks up where a5139f3c left off with added support for "get" search semantics for multiple merged annotations. Specifically, this commit introduces a new getAllMergedAnnotations() method in AnnotatedElementUtils. Issue: SPR-13486
-
由 Sam Brannen 提交于
-
由 Sam Brannen 提交于
Prior to this commit, AnnotationUtils supported searching for repeatable annotations even if the repeatable annotation was declared on a custom stereotype annotation. However, there was no support for merging of attributes in composed repeatable annotations. In other words, it was not possible for a custom annotation to override attributes in a repeatable annotation. This commit addresses this by introducing findMergedRepeatableAnnotations() methods in AnnotatedElementUtils. These new methods provide full support for explicit annotation attribute overrides configured via @AliasFor (as well as convention-based overrides) with "find semantics". Issue: SPR-13973
-
由 Juergen Hoeller 提交于
Issue: SPR-13440
-
由 Juergen Hoeller 提交于
Issue: SPR-13440
-
- 21 3月, 2016 1 次提交
-
-
由 Sam Brannen 提交于
Prior to this commit it was possible to search for the 1st merged annotation above an annotated element. It was also possible to search for annotation attributes aggregated from all annotations above an annotated element; however, it was impossible to search for all composed annotations above an annotated element and have the results as synthesized merged annotations instead of a multi-map of attributes. This commit introduces a new findAllMergedAnnotations() method in AnnotatedElementUtils that finds all annotations of the specified type within the annotation hierarchy above the supplied element. For each such annotation found, it merges that annotation's attributes with matching attributes from annotations in lower levels of the annotation hierarchy and synthesizes the results back into an annotation of the specified type. All such merged annotations are collected and returned as a set. Issue: SPR-13486
-
- 20 3月, 2016 1 次提交
-
-
由 Sam Brannen 提交于
-
- 19 3月, 2016 2 次提交
-
-
由 Sam Brannen 提交于
Prior to this commit, it was possible that implicit aliases and transitive implicit aliases (configured via @AliasFor) might not be honored in certain circumstances, in particular if implicit aliases were declared to override different attributes within an alias pair in the target meta-annotation. This commit addresses this issue by ensuring that all aliased attributes in the target meta-annotation are overridden during the merge process in AnnotatedElementUtils. In addition, concrete default values for attributes in a meta-annotation declaration can now be effectively shadowed by transitive implicit aliases in composed annotations. Issue: SPR-14069
-
由 Sam Brannen 提交于
-