From 50f7ffddf86fcd8c020fab8a68ddd0547fea9ba2 Mon Sep 17 00:00:00 2001 From: Juergen Hoeller Date: Wed, 4 Jul 2018 23:07:08 +0200 Subject: [PATCH] Polishing --- .../factory/BeanDefinitionStoreException.java | 14 +++++++------- .../factory/support/BeanDefinitionRegistry.java | 3 ++- .../BeanAnnotationAttributePropagationTests.java | 16 ++++++++++++++-- 3 files changed, 23 insertions(+), 10 deletions(-) diff --git a/spring-beans/src/main/java/org/springframework/beans/factory/BeanDefinitionStoreException.java b/spring-beans/src/main/java/org/springframework/beans/factory/BeanDefinitionStoreException.java index 47a2ec8c14..1d0fc9a7f4 100644 --- a/spring-beans/src/main/java/org/springframework/beans/factory/BeanDefinitionStoreException.java +++ b/spring-beans/src/main/java/org/springframework/beans/factory/BeanDefinitionStoreException.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2012 the original author or authors. + * Copyright 2002-2018 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. @@ -75,7 +75,7 @@ public class BeanDefinitionStoreException extends FatalBeanException { /** * Create a new BeanDefinitionStoreException. * @param resourceDescription description of the resource that the bean definition came from - * @param beanName the name of the bean requested + * @param beanName the name of the bean * @param msg the detail message (appended to an introductory message that indicates * the resource and the name of the bean) */ @@ -86,28 +86,28 @@ public class BeanDefinitionStoreException extends FatalBeanException { /** * Create a new BeanDefinitionStoreException. * @param resourceDescription description of the resource that the bean definition came from - * @param beanName the name of the bean requested + * @param beanName the name of the bean * @param msg the detail message (appended to an introductory message that indicates * the resource and the name of the bean) * @param cause the root cause (may be {@code null}) */ public BeanDefinitionStoreException(String resourceDescription, String beanName, String msg, Throwable cause) { - super("Invalid bean definition with name '" + beanName + "' defined in " + resourceDescription + ": " + msg, cause); + super("Invalid bean definition with name '" + beanName + "' defined in " + resourceDescription + ": " + msg, + cause); this.resourceDescription = resourceDescription; this.beanName = beanName; } /** - * Return the description of the resource that the bean - * definition came from, if any. + * Return the description of the resource that the bean definition came from, if available. */ public String getResourceDescription() { return this.resourceDescription; } /** - * Return the name of the bean requested, if any. + * Return the name of the bean, if available. */ public String getBeanName() { return this.beanName; diff --git a/spring-beans/src/main/java/org/springframework/beans/factory/support/BeanDefinitionRegistry.java b/spring-beans/src/main/java/org/springframework/beans/factory/support/BeanDefinitionRegistry.java index 326e1fb58c..c99271bc32 100644 --- a/spring-beans/src/main/java/org/springframework/beans/factory/support/BeanDefinitionRegistry.java +++ b/spring-beans/src/main/java/org/springframework/beans/factory/support/BeanDefinitionRegistry.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2012 the original author or authors. + * Copyright 2002-2018 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. @@ -55,6 +55,7 @@ public interface BeanDefinitionRegistry extends AliasRegistry { * @throws BeanDefinitionStoreException if the BeanDefinition is invalid * or if there is already a BeanDefinition for the specified bean name * (and we are not allowed to override it) + * @see GenericBeanDefinition * @see RootBeanDefinition * @see ChildBeanDefinition */ diff --git a/spring-context/src/test/java/org/springframework/context/annotation/configuration/BeanAnnotationAttributePropagationTests.java b/spring-context/src/test/java/org/springframework/context/annotation/configuration/BeanAnnotationAttributePropagationTests.java index 5c6152262d..21fe58860f 100644 --- a/spring-context/src/test/java/org/springframework/context/annotation/configuration/BeanAnnotationAttributePropagationTests.java +++ b/spring-context/src/test/java/org/springframework/context/annotation/configuration/BeanAnnotationAttributePropagationTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2012 the original author or authors. + * Copyright 2002-2018 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. @@ -18,6 +18,7 @@ package org.springframework.context.annotation.configuration; import org.junit.Test; +import org.springframework.beans.factory.annotation.Autowire; import org.springframework.beans.factory.config.BeanDefinition; import org.springframework.beans.factory.support.AbstractBeanDefinition; import org.springframework.beans.factory.support.DefaultListableBeanFactory; @@ -41,9 +42,20 @@ import static org.junit.Assert.*; * correctly into the resulting BeanDefinition * * @author Chris Beams + * @author Juergen Hoeller */ public class BeanAnnotationAttributePropagationTests { + @Test + public void autowireMetadataIsPropagated() { + @Configuration class Config { + @Bean(autowire=Autowire.BY_TYPE) Object foo() { return null; } + } + + assertEquals("autowire mode was not propagated", + AbstractBeanDefinition.AUTOWIRE_BY_TYPE, beanDef(Config.class).getAutowireMode()); + } + @Test public void initMethodMetadataIsPropagated() { @Configuration class Config { @@ -138,7 +150,7 @@ public class BeanAnnotationAttributePropagationTests { @Test public void eagerConfigurationProducesEagerBeanDefinitions() { - @Lazy(false) @Configuration class Config { // will probably never happen, doesn't make much sense + @Lazy(false) @Configuration class Config { // will probably never happen, doesn't make much sense @Bean Object foo() { return null; } }