Eliminate inspection of annotations on core Java annotations
This commit picks up where SPR-11483 left off, with the goal of eliminating all unnecessary inspection of core JDK annotations in Spring's annotation search algorithms in AnnotatedElementUtils and AnnotationMetadataReadingVisitor. Issue: SPR-12989
This commit is contained in:
@@ -57,13 +57,13 @@ public class AnnotatedElementUtilsTests {
|
||||
@Test
|
||||
public void getMetaAnnotationTypesOnClassWithMetaDepth1() {
|
||||
Set<String> names = getMetaAnnotationTypes(TransactionalComponentClass.class, TransactionalComponent.class);
|
||||
assertEquals(names(Transactional.class, Component.class, Retention.class, Documented.class, Target.class, Inherited.class), names);
|
||||
assertEquals(names(Transactional.class, Component.class), names);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getMetaAnnotationTypesOnClassWithMetaDepth2() {
|
||||
Set<String> names = getMetaAnnotationTypes(ComposedTransactionalComponentClass.class, ComposedTransactionalComponent.class);
|
||||
assertEquals(names(TransactionalComponent.class, Transactional.class, Component.class, Retention.class, Documented.class, Target.class, Inherited.class), names);
|
||||
assertEquals(names(TransactionalComponent.class, Transactional.class, Component.class), names);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2002-2014 the original author or authors.
|
||||
* Copyright 2002-2015 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
@@ -154,7 +154,7 @@ public class AnnotationMetadataTests {
|
||||
assertThat(metadata.getSuperClassName(), nullValue());
|
||||
assertThat(metadata.getInterfaceNames().length, is(1));
|
||||
assertThat(metadata.getInterfaceNames()[0], is(Annotation.class.getName()));
|
||||
assertThat(metadata.isAnnotated(Documented.class.getName()), is(true));
|
||||
assertThat(metadata.isAnnotated(Documented.class.getName()), is(false));
|
||||
assertThat(metadata.isAnnotated(Scope.class.getName()), is(false));
|
||||
assertThat(metadata.isAnnotated(SpecialAttr.class.getName()), is(false));
|
||||
assertThat(metadata.hasAnnotation(Documented.class.getName()), is(true));
|
||||
|
||||
Reference in New Issue
Block a user