diff --git a/spring-context/src/main/java/org/springframework/context/annotation/BeanMethod.java b/spring-context/src/main/java/org/springframework/context/annotation/BeanMethod.java index 128a4a827f0..ca7d034ca6f 100644 --- a/spring-context/src/main/java/org/springframework/context/annotation/BeanMethod.java +++ b/spring-context/src/main/java/org/springframework/context/annotation/BeanMethod.java @@ -33,7 +33,7 @@ import org.springframework.core.type.MethodMetadata; */ final class BeanMethod extends ConfigurationMethod { - public BeanMethod(MethodMetadata metadata, ConfigurationClass configurationClass) { + BeanMethod(MethodMetadata metadata, ConfigurationClass configurationClass) { super(metadata, configurationClass); } @@ -55,7 +55,7 @@ final class BeanMethod extends ConfigurationMethod { private class NonOverridableMethodError extends Problem { - public NonOverridableMethodError() { + NonOverridableMethodError() { super(String.format("@Bean method '%s' must not be private or final; change the method's modifiers to continue", getMetadata().getMethodName()), getResourceLocation()); } diff --git a/spring-context/src/main/java/org/springframework/context/annotation/ConfigurationClass.java b/spring-context/src/main/java/org/springframework/context/annotation/ConfigurationClass.java index 0b02ead88af..b6155f6d7bf 100644 --- a/spring-context/src/main/java/org/springframework/context/annotation/ConfigurationClass.java +++ b/spring-context/src/main/java/org/springframework/context/annotation/ConfigurationClass.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2019 the original author or authors. + * Copyright 2002-2021 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. @@ -36,7 +36,7 @@ import org.springframework.util.ClassUtils; /** * Represents a user-defined {@link Configuration @Configuration} class. - * Includes a set of {@link Bean} methods, including all such methods + *
Includes a set of {@link Bean} methods, including all such methods
* defined in the ancestry of the class, in a 'flattened-out' manner.
*
* @author Chris Beams
@@ -74,7 +74,7 @@ final class ConfigurationClass {
* @param beanName must not be {@code null}
* @see ConfigurationClass#ConfigurationClass(Class, ConfigurationClass)
*/
- public ConfigurationClass(MetadataReader metadataReader, String beanName) {
+ ConfigurationClass(MetadataReader metadataReader, String beanName) {
Assert.notNull(beanName, "Bean name must not be null");
this.metadata = metadataReader.getAnnotationMetadata();
this.resource = metadataReader.getResource();
@@ -89,7 +89,7 @@ final class ConfigurationClass {
* @param importedBy the configuration class importing this one or {@code null}
* @since 3.1.1
*/
- public ConfigurationClass(MetadataReader metadataReader, @Nullable ConfigurationClass importedBy) {
+ ConfigurationClass(MetadataReader metadataReader, @Nullable ConfigurationClass importedBy) {
this.metadata = metadataReader.getAnnotationMetadata();
this.resource = metadataReader.getResource();
this.importedBy.add(importedBy);
@@ -101,7 +101,7 @@ final class ConfigurationClass {
* @param beanName name of the {@code @Configuration} class bean
* @see ConfigurationClass#ConfigurationClass(Class, ConfigurationClass)
*/
- public ConfigurationClass(Class> clazz, String beanName) {
+ ConfigurationClass(Class> clazz, String beanName) {
Assert.notNull(beanName, "Bean name must not be null");
this.metadata = AnnotationMetadata.introspect(clazz);
this.resource = new DescriptiveResource(clazz.getName());
@@ -116,7 +116,7 @@ final class ConfigurationClass {
* @param importedBy the configuration class importing this one (or {@code null})
* @since 3.1.1
*/
- public ConfigurationClass(Class> clazz, @Nullable ConfigurationClass importedBy) {
+ ConfigurationClass(Class> clazz, @Nullable ConfigurationClass importedBy) {
this.metadata = AnnotationMetadata.introspect(clazz);
this.resource = new DescriptiveResource(clazz.getName());
this.importedBy.add(importedBy);
@@ -128,7 +128,7 @@ final class ConfigurationClass {
* @param beanName name of the {@code @Configuration} class bean
* @see ConfigurationClass#ConfigurationClass(Class, ConfigurationClass)
*/
- public ConfigurationClass(AnnotationMetadata metadata, String beanName) {
+ ConfigurationClass(AnnotationMetadata metadata, String beanName) {
Assert.notNull(beanName, "Bean name must not be null");
this.metadata = metadata;
this.resource = new DescriptiveResource(metadata.getClassName());
@@ -136,19 +136,19 @@ final class ConfigurationClass {
}
- public AnnotationMetadata getMetadata() {
+ AnnotationMetadata getMetadata() {
return this.metadata;
}
- public Resource getResource() {
+ Resource getResource() {
return this.resource;
}
- public String getSimpleName() {
+ String getSimpleName() {
return ClassUtils.getShortName(getMetadata().getClassName());
}
- public void setBeanName(String beanName) {
+ void setBeanName(String beanName) {
this.beanName = beanName;
}
@@ -171,7 +171,7 @@ final class ConfigurationClass {
* Merge the imported-by declarations from the given configuration class into this one.
* @since 4.0.5
*/
- public void mergeImportedBy(ConfigurationClass otherConfigClass) {
+ void mergeImportedBy(ConfigurationClass otherConfigClass) {
this.importedBy.addAll(otherConfigClass.importedBy);
}
@@ -181,35 +181,35 @@ final class ConfigurationClass {
* @since 4.0.5
* @see #isImported()
*/
- public Set Related to SPR-6618.
*
* @author Chris Beams
* @author Phillip Webb
@@ -41,7 +41,7 @@ public class BeanMethodPolymorphismTests {
@Test
public void beanMethodDetectedOnSuperClass() {
AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext(Config.class);
- ctx.getBean("testBean", TestBean.class);
+ assertThat(ctx.getBean("testBean", TestBean.class)).isNotNull();
}
@Test
diff --git a/spring-core/src/main/java/org/springframework/core/type/StandardAnnotationMetadata.java b/spring-core/src/main/java/org/springframework/core/type/StandardAnnotationMetadata.java
index 2c5347f6a34..60f0a26ff40 100644
--- a/spring-core/src/main/java/org/springframework/core/type/StandardAnnotationMetadata.java
+++ b/spring-core/src/main/java/org/springframework/core/type/StandardAnnotationMetadata.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2002-2020 the original author or authors.
+ * Copyright 2002-2021 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.
@@ -165,12 +165,12 @@ public class StandardAnnotationMetadata extends StandardClassMetadata implements
return annotatedMethods != null ? annotatedMethods : Collections.emptySet();
}
- private boolean isAnnotatedMethod(Method method, String annotationName) {
+
+ private static boolean isAnnotatedMethod(Method method, String annotationName) {
return !method.isBridge() && method.getAnnotations().length > 0 &&
AnnotatedElementUtils.isAnnotated(method, annotationName);
}
-
static AnnotationMetadata from(Class> introspectedClass) {
return new StandardAnnotationMetadata(introspectedClass, true);
}
diff --git a/spring-core/src/test/java/org/springframework/core/type/AbstractClassMetadataMemberClassTests.java b/spring-core/src/test/java/org/springframework/core/type/AbstractClassMetadataMemberClassTests.java
index 7c520f9db9d..7b2c69aa465 100644
--- a/spring-core/src/test/java/org/springframework/core/type/AbstractClassMetadataMemberClassTests.java
+++ b/spring-core/src/test/java/org/springframework/core/type/AbstractClassMetadataMemberClassTests.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2002-2019 the original author or authors.
+ * Copyright 2002-2021 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.
@@ -20,7 +20,6 @@ import org.junit.jupiter.api.Test;
import static org.assertj.core.api.Assertions.assertThat;
-
/**
* Abstract base class for testing implementations of
* {@link ClassMetadata#getMemberClassNames()}.
@@ -30,48 +29,45 @@ import static org.assertj.core.api.Assertions.assertThat;
*/
public abstract class AbstractClassMetadataMemberClassTests {
- public abstract ClassMetadata getClassMetadataFor(Class> clazz);
+ protected abstract ClassMetadata getClassMetadataFor(Class> clazz);
@Test
void withNoMemberClasses() {
ClassMetadata metadata = getClassMetadataFor(L0_a.class);
String[] nestedClasses = metadata.getMemberClassNames();
- assertThat(nestedClasses).isEqualTo(new String[]{});
- }
-
- public static class L0_a {
+ assertThat(nestedClasses).isEmpty();
}
-
@Test
void withPublicMemberClasses() {
ClassMetadata metadata = getClassMetadataFor(L0_b.class);
String[] nestedClasses = metadata.getMemberClassNames();
- assertThat(nestedClasses).isEqualTo(new String[]{L0_b.L1.class.getName()});
+ assertThat(nestedClasses).containsOnly(L0_b.L1.class.getName());
}
- public static class L0_b {
- public static class L1 { }
- }
-
-
@Test
void withNonPublicMemberClasses() {
ClassMetadata metadata = getClassMetadataFor(L0_c.class);
String[] nestedClasses = metadata.getMemberClassNames();
- assertThat(nestedClasses).isEqualTo(new String[]{L0_c.L1.class.getName()});
- }
-
- public static class L0_c {
- private static class L1 { }
+ assertThat(nestedClasses).containsOnly(L0_c.L1.class.getName());
}
-
@Test
void againstMemberClass() {
ClassMetadata metadata = getClassMetadataFor(L0_b.L1.class);
String[] nestedClasses = metadata.getMemberClassNames();
- assertThat(nestedClasses).isEqualTo(new String[]{});
+ assertThat(nestedClasses).isEmpty();
+ }
+
+ public static class L0_a {
+ }
+
+ public static class L0_b {
+ public static class L1 { }
+ }
+
+ public static class L0_c {
+ private static class L1 { }
}
}
diff --git a/spring-core/src/test/java/org/springframework/core/type/classreading/AnnotationMetadataReadingVisitorTests.java b/spring-core/src/test/java/org/springframework/core/type/classreading/AnnotationMetadataReadingVisitorTests.java
index fc340761cdb..54672cfd4e2 100644
--- a/spring-core/src/test/java/org/springframework/core/type/classreading/AnnotationMetadataReadingVisitorTests.java
+++ b/spring-core/src/test/java/org/springframework/core/type/classreading/AnnotationMetadataReadingVisitorTests.java
@@ -65,8 +65,8 @@ class AnnotationMetadataReadingVisitorTests extends AbstractAnnotationMetadataTe
@Override
@Test
public void getAnnotationsReturnsDirectAnnotations() {
- assertThatExceptionOfType(UnsupportedOperationException.class).isThrownBy(
- super::getAnnotationsReturnsDirectAnnotations);
+ assertThatExceptionOfType(UnsupportedOperationException.class)
+ .isThrownBy(super::getAnnotationsReturnsDirectAnnotations);
}
}