RESOLVED - issue SPR-5600: Make naming of @Configuration class processing-related artifacts consistent

This commit is contained in:
Chris Beams 2009-03-30 15:26:21 +00:00
parent 24e8dccd44
commit cc713ad524
13 changed files with 31 additions and 32 deletions

View File

@ -29,7 +29,7 @@ import org.springframework.beans.factory.support.BeanDefinitionRegistry;
* <p>Provides template method {@link #processConfigBeanDefinitions()} that orchestrates calling each
* of several abstract methods to be overriden by concrete implementations that allow for
* customizing how {@link Configuration} classes are found ({@link #getConfigurationBeanDefinitions}),
* customizing the creation of a {@link ConfigurationParser} ({@link #createConfigurationParser}),
* customizing the creation of a {@link ConfigurationClassParser} ({@link #createConfigurationParser}),
* and customizing {@link ConfigurationModel} validation logic ({@link #validateModel}).
*
* <p>This class was expressly designed with tooling in mind. Spring IDE will maintain it's
@ -63,12 +63,12 @@ public abstract class AbstractConfigurationClassProcessor {
protected abstract BeanDefinitionRegistry getConfigurationBeanDefinitions(boolean includeAbstractBeanDefs);
/**
* Create and return a new {@link ConfigurationParser}, allowing for customization of
* Create and return a new {@link ConfigurationClassParser}, allowing for customization of
* type (ASM/JDT/Reflection) as well as providing specialized ClassLoader during
* construction.
* @see #processConfigBeanDefinitions()
*/
protected abstract ConfigurationParser createConfigurationParser();
protected abstract ConfigurationClassParser createConfigurationParser();
/**
* Override the default {@link ProblemReporter}.
@ -102,7 +102,7 @@ public abstract class AbstractConfigurationClassProcessor {
return configBeanDefs;
// populate a new ConfigurationModel by parsing each @Configuration classes
ConfigurationParser parser = createConfigurationParser();
ConfigurationClassParser parser = createConfigurationParser();
for(String beanName : configBeanDefs.getBeanDefinitionNames()) {
BeanDefinition beanDef = configBeanDefs.getBeanDefinition(beanName);

View File

@ -28,7 +28,7 @@ import org.springframework.asm.MethodVisitor;
/**
* Transforms a class by adding bytecode for a class-level annotation. Checks to ensure that
* the desired annotation is not already present before adding. Used by
* {@link ConfigurationEnhancer} to dynamically add an {@link org.aspectj.lang.Aspect}
* {@link ConfigurationClassEnhancer} to dynamically add an {@link org.aspectj.lang.Aspect}
* annotation to an enhanced Configuration subclass.
*
* <p>This class was originally adapted from examples the ASM 3.0 documentation.

View File

@ -36,7 +36,7 @@ import org.springframework.util.Assert;
* @author Chris Beams
* @see ConfigurationClass
* @see ConfigurationModel
* @see ConfigurationParser
* @see ConfigurationClassParser
* @see ConfigurationModelBeanDefinitionReader
*/
final class BeanMethod implements BeanMetadataElement {

View File

@ -36,7 +36,7 @@ import org.springframework.core.annotation.AnnotationUtils;
*
* @author Chris Beams
* @see Bean
* @see ConfigurationEnhancer
* @see ConfigurationClassEnhancer
*/
class BeanMethodInterceptor implements MethodInterceptor {

View File

@ -38,7 +38,7 @@ import org.springframework.util.Assert;
* @author Chris Beams
* @see ConfigurationModel
* @see BeanMethod
* @see ConfigurationParser
* @see ConfigurationClassParser
*/
final class ConfigurationClass extends ModelClass {

View File

@ -48,9 +48,9 @@ import org.springframework.util.Assert;
* @author Chris Beams
* @see ConfigurationClassPostProcessor
*/
class ConfigurationEnhancer {
class ConfigurationClassEnhancer {
private static final Log log = LogFactory.getLog(ConfigurationEnhancer.class);
private static final Log log = LogFactory.getLog(ConfigurationClassEnhancer.class);
private final ArrayList<Callback> callbackInstances = new ArrayList<Callback>();
private final ArrayList<Class<? extends Callback>> callbackTypes = new ArrayList<Class<? extends Callback>>();
@ -58,9 +58,9 @@ class ConfigurationEnhancer {
/**
* Creates a new {@link ConfigurationEnhancer} instance.
* Creates a new {@link ConfigurationClassEnhancer} instance.
*/
public ConfigurationEnhancer(DefaultListableBeanFactory beanFactory) {
public ConfigurationClassEnhancer(DefaultListableBeanFactory beanFactory) {
Assert.notNull(beanFactory, "beanFactory must be non-null");
callbackInstances.add(new BeanMethodInterceptor(beanFactory));

View File

@ -34,11 +34,10 @@ import org.springframework.util.ClassUtils;
* that model.
*
* @author Chris Beams
* @since 3.0
* @see ConfigurationModel
* @see ConfigurationModelBeanDefinitionReader
*/
class ConfigurationParser {
class ConfigurationClassParser {
/**
* Model to be populated during calls to {@link #parse(Object, String)}
@ -48,13 +47,13 @@ class ConfigurationParser {
private final ClassLoader classLoader;
/**
* Creates a new {@link ConfigurationParser} instance that will be used to populate a
* Creates a new {@link ConfigurationClassParser} instance that will be used to populate a
* {@link ConfigurationModel}.
*
* @param model model to be populated by each successive call to {@link #parse}
* @see #getConfigurationModel()
*/
public ConfigurationParser(ProblemReporter problemReporter, ClassLoader classLoader) {
public ConfigurationClassParser(ProblemReporter problemReporter, ClassLoader classLoader) {
this.model = new ConfigurationModel();
this.problemReporter = problemReporter;
this.classLoader = classLoader;

View File

@ -103,8 +103,8 @@ public class ConfigurationClassPostProcessor extends AbstractConfigurationClassP
* ClassLoader to load all Configuration class artifacts.
*/
@Override
protected ConfigurationParser createConfigurationParser() {
return new ConfigurationParser(this.getProblemReporter(), beanFactory.getBeanClassLoader());
protected ConfigurationClassParser createConfigurationParser() {
return new ConfigurationClassParser(this.getProblemReporter(), beanFactory.getBeanClassLoader());
}
/**
@ -131,10 +131,10 @@ public class ConfigurationClassPostProcessor extends AbstractConfigurationClassP
/**
* Post-processes a BeanFactory in search of Configuration class BeanDefinitions; any
* candidates are then enhanced by a {@link ConfigurationEnhancer}. Candidate status is
* candidates are then enhanced by a {@link ConfigurationClassEnhancer}. Candidate status is
* determined by BeanDefinition attribute metadata.
*
* @see ConfigurationEnhancer
* @see ConfigurationClassEnhancer
* @see BeanFactoryPostProcessor
*/
private void enhanceConfigurationClasses() {
@ -147,7 +147,7 @@ public class ConfigurationClassPostProcessor extends AbstractConfigurationClassP
assertCglibIsPresent(configBeanDefs);
ConfigurationEnhancer enhancer = new ConfigurationEnhancer(beanFactory);
ConfigurationClassEnhancer enhancer = new ConfigurationClassEnhancer(beanFactory);
for (String beanName : configBeanDefs.getBeanDefinitionNames()) {
BeanDefinition beanDef = beanFactory.getBeanDefinition(beanName);

View File

@ -41,7 +41,7 @@ import org.springframework.core.io.ClassPathResource;
* {@link ConfigurationClass} instance with information gleaned along the way.
*
* @author Chris Beams
* @see ConfigurationParser
* @see ConfigurationClassParser
* @see ConfigurationClass
*/
class ConfigurationClassVisitor extends ClassAdapter {

View File

@ -26,14 +26,14 @@ import org.springframework.beans.factory.parsing.ProblemReporter;
/**
* Represents the set of all user-defined {@link Configuration} classes. Once this model
* is populated using a {@link ConfigurationParser}, it can be rendered out to a set of
* is populated using a {@link ConfigurationClassParser}, it can be rendered out to a set of
* {@link BeanDefinition} objects. This model provides an important layer of indirection
* between the complexity of parsing a set of classes and the complexity of representing
* the contents of those classes as BeanDefinitions.
*
* @author Chris Beams
* @see ConfigurationClass
* @see ConfigurationParser
* @see ConfigurationClassParser
* @see ConfigurationModelBeanDefinitionReader
*/
@SuppressWarnings("serial")

View File

@ -26,12 +26,12 @@ import org.springframework.util.ClassUtils;
/**
* Represents a class, free from java reflection,
* populated by {@link ConfigurationParser}.
* populated by {@link ConfigurationClassParser}.
*
* @author Chris Beams
* @see ConfigurationModel
* @see ConfigurationClass
* @see ConfigurationParser
* @see ConfigurationClassParser
*/
class ModelClass implements BeanMetadataElement {

View File

@ -20,7 +20,7 @@ import static org.junit.Assert.*;
import org.junit.Test;
import org.springframework.beans.factory.parsing.BeanDefinitionParsingException;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ConfigurationParser;
import org.springframework.context.annotation.ConfigurationClassParser;
import org.springframework.context.annotation.Import;
import test.beans.TestBean;
@ -34,7 +34,7 @@ import test.beans.TestBean;
*/
public abstract class AbstractCircularImportDetectionTests {
protected abstract ConfigurationParser newParser();
protected abstract ConfigurationClassParser newParser();
protected abstract String loadAsConfigurationSource(Class<?> clazz) throws Exception;

View File

@ -16,13 +16,13 @@
package org.springframework.context.annotation;
import org.springframework.beans.factory.parsing.FailFastProblemReporter;
import org.springframework.context.annotation.ConfigurationParser;
import org.springframework.context.annotation.ConfigurationClassParser;
import org.springframework.context.annotation.Import;
import org.springframework.util.ClassUtils;
/**
* Unit test proving that ASM-based {@link ConfigurationParser} correctly detects circular use of
* Unit test proving that ASM-based {@link ConfigurationClassParser} correctly detects circular use of
* the {@link Import @Import} annotation.
*
* <p>While this test is the only subclass of {@link AbstractCircularImportDetectionTests}, the
@ -33,8 +33,8 @@ import org.springframework.util.ClassUtils;
*/
public class AsmCircularImportDetectionTests extends AbstractCircularImportDetectionTests {
@Override
protected ConfigurationParser newParser() {
return new ConfigurationParser(new FailFastProblemReporter(), ClassUtils.getDefaultClassLoader());
protected ConfigurationClassParser newParser() {
return new ConfigurationClassParser(new FailFastProblemReporter(), ClassUtils.getDefaultClassLoader());
}
@Override