diff --git a/org.springframework.config.java/src/main/java/org/springframework/config/java/MalformedJavaConfigurationException.java b/org.springframework.config.java/src/main/java/org/springframework/config/java/MalformedConfigurationException.java similarity index 90% rename from org.springframework.config.java/src/main/java/org/springframework/config/java/MalformedJavaConfigurationException.java rename to org.springframework.config.java/src/main/java/org/springframework/config/java/MalformedConfigurationException.java index a331ccee10..ba3e2a2c93 100644 --- a/org.springframework.config.java/src/main/java/org/springframework/config/java/MalformedJavaConfigurationException.java +++ b/org.springframework.config.java/src/main/java/org/springframework/config/java/MalformedConfigurationException.java @@ -26,16 +26,16 @@ import java.util.List; * @author Chris Beams */ @SuppressWarnings("serial") -public class MalformedJavaConfigurationException extends RuntimeException { +public class MalformedConfigurationException extends RuntimeException { private final List errors; - public MalformedJavaConfigurationException(String message) { + public MalformedConfigurationException(String message) { super(message); this.errors = new ArrayList(); } - public MalformedJavaConfigurationException(UsageError... errors) { + public MalformedConfigurationException(UsageError... errors) { super(toString(errors)); this.errors = Arrays.asList(errors); } diff --git a/org.springframework.config.java/src/main/java/org/springframework/config/java/util/DefaultScopes.java b/org.springframework.config.java/src/main/java/org/springframework/config/java/Scopes.java similarity index 55% rename from org.springframework.config.java/src/main/java/org/springframework/config/java/util/DefaultScopes.java rename to org.springframework.config.java/src/main/java/org/springframework/config/java/Scopes.java index f92c2ced9e..1b0636c9b1 100644 --- a/org.springframework.config.java/src/main/java/org/springframework/config/java/util/DefaultScopes.java +++ b/org.springframework.config.java/src/main/java/org/springframework/config/java/Scopes.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2008 the original author or authors. + * Copyright 2002-2009 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. @@ -13,22 +13,26 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.springframework.config.java.util; - -import org.springframework.beans.factory.config.BeanDefinition; +package org.springframework.config.java; /** - * Constant class contains the names of the scopes supported out of the box in Spring 2.0. + * Enumerates the names of the scopes supported out of the box in Spring. + *

+ * Not modeled as an actual java enum because annotations that accept a scope + * attribute must allow for user-defined scope names. Given that java + * enums are not extensible, these must remain simple string constants. * - * @author Costin Leau * @author Chris Beams + * @since 3.0 */ -public abstract class DefaultScopes { +public class Scopes { + + private Scopes() { } - public static final String SINGLETON = BeanDefinition.SCOPE_SINGLETON; + public static final String SINGLETON = "singleton"; // see BeanDefinition.SCOPE_SINGLETON; - public static final String PROTOTYPE = BeanDefinition.SCOPE_PROTOTYPE; + public static final String PROTOTYPE = "prototype"; // see BeanDefinition.SCOPE_PROTOTYPE; public static final String REQUEST = "request"; // see WebApplicationContext.SCOPE_REQUEST; diff --git a/org.springframework.config.java/src/main/java/org/springframework/config/java/UsageError.java b/org.springframework.config.java/src/main/java/org/springframework/config/java/UsageError.java index 90767b6a41..43b0f78ec9 100644 --- a/org.springframework.config.java/src/main/java/org/springframework/config/java/UsageError.java +++ b/org.springframework.config.java/src/main/java/org/springframework/config/java/UsageError.java @@ -24,7 +24,7 @@ package org.springframework.config.java; * possible usage errors. * * @author Chris Beams - * @see MalformedJavaConfigurationException + * @see MalformedConfigurationException */ public abstract class UsageError { diff --git a/org.springframework.config.java/src/main/java/org/springframework/config/java/ext/Bean.java b/org.springframework.config.java/src/main/java/org/springframework/config/java/ext/Bean.java index bf505f7945..5c2e74ef3c 100644 --- a/org.springframework.config.java/src/main/java/org/springframework/config/java/ext/Bean.java +++ b/org.springframework.config.java/src/main/java/org/springframework/config/java/ext/Bean.java @@ -31,6 +31,7 @@ import org.springframework.config.java.ConfigurationClass; import org.springframework.config.java.ConfigurationModel; import org.springframework.config.java.Factory; import org.springframework.config.java.ModelMethod; +import org.springframework.config.java.Scopes; import org.springframework.config.java.UsageError; import org.springframework.config.java.Validator; @@ -90,7 +91,7 @@ public @interface Bean { * Scope: whether the bean is a singleton, prototype or custom scope. * Default is singleton. */ - String scope() default BeanDefinition.SCOPE_SINGLETON; + String scope() default Scopes.SINGLETON; /** * Bean autowire strategy. diff --git a/org.springframework.config.java/src/main/java/org/springframework/config/java/ext/BeanRegistrar.java b/org.springframework.config.java/src/main/java/org/springframework/config/java/ext/BeanRegistrar.java index 1485371f29..b62eca4a9f 100644 --- a/org.springframework.config.java/src/main/java/org/springframework/config/java/ext/BeanRegistrar.java +++ b/org.springframework.config.java/src/main/java/org/springframework/config/java/ext/BeanRegistrar.java @@ -16,7 +16,7 @@ import org.springframework.beans.factory.support.RootBeanDefinition; import org.springframework.config.java.BeanDefinitionRegistrar; import org.springframework.config.java.Configuration; import org.springframework.config.java.ConfigurationClass; -import org.springframework.config.java.MalformedJavaConfigurationException; +import org.springframework.config.java.MalformedConfigurationException; import org.springframework.config.java.ModelMethod; import org.springframework.config.java.UsageError; import org.springframework.core.annotation.AnnotationUtils; @@ -72,7 +72,7 @@ class BeanRegistrar implements BeanDefinitionRegistrar { // ensure that overriding is ok if (bean.allowOverriding() == false) { UsageError error = configClass.new IllegalBeanOverrideError(null, method); - throw new MalformedJavaConfigurationException(error); + throw new MalformedConfigurationException(error); } // overriding is legal, return immediately diff --git a/org.springframework.config.java/src/main/java/org/springframework/config/java/support/ConfigurationPostProcessor.java b/org.springframework.config.java/src/main/java/org/springframework/config/java/support/ConfigurationPostProcessor.java index 921444d4a7..99c337fa0d 100644 --- a/org.springframework.config.java/src/main/java/org/springframework/config/java/support/ConfigurationPostProcessor.java +++ b/org.springframework.config.java/src/main/java/org/springframework/config/java/support/ConfigurationPostProcessor.java @@ -30,7 +30,7 @@ import org.springframework.beans.factory.config.ConfigurableListableBeanFactory; import org.springframework.beans.factory.support.DefaultListableBeanFactory; import org.springframework.config.java.Configuration; import org.springframework.config.java.ConfigurationModel; -import org.springframework.config.java.MalformedJavaConfigurationException; +import org.springframework.config.java.MalformedConfigurationException; import org.springframework.config.java.UsageError; import org.springframework.config.java.internal.enhancement.ConfigurationEnhancer; import org.springframework.config.java.internal.parsing.ConfigurationParser; @@ -102,7 +102,7 @@ public class ConfigurationPostProcessor implements Ordered, BeanFactoryPostProce ArrayList errors = new ArrayList(); model.validate(errors); if (errors.size() > 0) - throw new MalformedJavaConfigurationException(errors.toArray(new UsageError[] { })); + throw new MalformedConfigurationException(errors.toArray(new UsageError[] { })); modelBeanDefinitionReader.loadBeanDefinitions(model); } diff --git a/org.springframework.config.java/src/test/java/test/basic/BasicTests.java b/org.springframework.config.java/src/test/java/test/basic/BasicTests.java index 60b6157a89..cf95008287 100644 --- a/org.springframework.config.java/src/test/java/test/basic/BasicTests.java +++ b/org.springframework.config.java/src/test/java/test/basic/BasicTests.java @@ -10,9 +10,9 @@ import org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostP import org.springframework.beans.factory.config.BeanDefinition; import org.springframework.beans.factory.support.DefaultListableBeanFactory; import org.springframework.config.java.Configuration; +import org.springframework.config.java.Scopes; import org.springframework.config.java.ext.Bean; import org.springframework.config.java.support.ConfigurationPostProcessor; -import org.springframework.config.java.util.DefaultScopes; import test.beans.ITestBean; import test.beans.TestBean; @@ -89,7 +89,7 @@ public class BasicTests { return bar; } - @Bean(scope=DefaultScopes.PROTOTYPE) + @Bean(scope=Scopes.PROTOTYPE) public TestBean baz() { return new TestBean("bar"); }