Package org.grails.spring
Interface RuntimeSpringConfiguration
- All Known Implementing Classes:
DefaultRuntimeSpringConfiguration
public interface RuntimeSpringConfiguration
A programmable runtime Spring configuration that allows a spring ApplicationContext
to be constructed at runtime.
Credit must go to Solomon Duskis and the
article: http://jroller.com/page/Solomon?entry=programmatic_configuration_in_spring
- Since:
- 0.3
-
Method Summary
Modifier and TypeMethodDescriptionaddAbstractBean(String name) \ Adds an abstract bean definition to the bean factory and returns the BeanConfiguration object.voidAdds an alias to a given bean name.voidaddBeanConfiguration(String beanName, BeanConfiguration beanConfiguration) Adds a bean configuration to the list of beans to be created.voidaddBeanDefinition(String name, org.springframework.beans.factory.config.BeanDefinition bd) Adds a Spring BeanDefinition.addPrototypeBean(String name) Adds an empty prototype bean configuration.addPrototypeBean(String name, Class clazz) Adds a prototype bean definition.addSingletonBean(String name) Adds an empty singleton bean configuration.addSingletonBean(String name, Class clazz) Adds a singleton bean definition.addSingletonBean(String name, Class clazz, Collection args) Creates a new singleton bean and adds it to the list of bean references.booleancontainsBean(String name) Returns whether the runtime spring config contains the specified bean.org.springframework.beans.factory.support.AbstractBeanDefinitioncreateBeanDefinition(String name) Creates and returns the BeanDefinition that is regsitered within the given name or returns null.createPrototypeBean(String name) Creates a new prototype bean configuration.createSingletonBean(Class clazz) Creates a singleton bean configuration.createSingletonBean(Class clazz, Collection constructorArguments) Creates a singleton bean configuration.createSingletonBean(String name) Creates a new singleton bean configuration.org.springframework.context.ApplicationContextRetrieves the application context from the current state.getBeanConfig(String name) Returns the BeanConfiguration for the specified name.org.springframework.beans.factory.config.BeanDefinitiongetBeanDefinition(String beanName) Obtains a BeanDefinition instance for the given beanName.org.springframework.context.ApplicationContextvoidregisterBeansWithConfig(RuntimeSpringConfiguration targetSpringConfig) Registers the beans held within this RuntimeSpringConfiguration instance with the given RuntimeSpringConfiguration.voidregisterBeansWithContext(org.springframework.context.support.GenericApplicationContext applicationContext) Registers the beans held within this RuntimeSpringConfiguration instance with the given ApplicationContext.voidregisterBeansWithRegistry(org.springframework.beans.factory.support.BeanDefinitionRegistry registry) Registers the beans held within this RuntimeSpringConfiguration instance with the given BeanDefinitionRegistry.voidregisterPostProcessor(org.springframework.beans.factory.config.BeanFactoryPostProcessor processor) Registers a bean factory post processor with the context.voidsetBeanFactory(org.springframework.beans.factory.ListableBeanFactory beanFactory) Sets the BeanFactory implementation to use.
-
Method Details
-
addSingletonBean
Adds a singleton bean definition.- Parameters:
name- The name of the beanclazz- The class of the bean- Returns:
- A BeanConfiguration instance
-
getUnrefreshedApplicationContext
org.springframework.context.ApplicationContext getUnrefreshedApplicationContext() -
addPrototypeBean
Adds a prototype bean definition.- Parameters:
name- The name of the beanclazz- The class of the bean- Returns:
- A BeanConfiguration instance
-
getApplicationContext
org.springframework.context.ApplicationContext getApplicationContext()Retrieves the application context from the current state.- Returns:
- The ApplicationContext instance
-
addSingletonBean
Adds an empty singleton bean configuration.- Parameters:
name- The name of the singleton bean- Returns:
- A BeanConfiguration instance
-
addPrototypeBean
Adds an empty prototype bean configuration.- Parameters:
name- The name of the prototype bean- Returns:
- A BeanConfiguration instance
-
createSingletonBean
Creates a singleton bean configuration. Differs from addSingletonBean in that it doesn't add the bean to the list of bean references. Hence should be used for creating nested beans.- Parameters:
clazz-- Returns:
- A BeanConfiguration instance
-
addSingletonBean
Creates a new singleton bean and adds it to the list of bean references.- Parameters:
name- The name of the beanclazz- The class of the beanargs- The constructor arguments of the bean- Returns:
- A BeanConfiguration instance
-
createSingletonBean
Creates a singleton bean configuration. Differs from addSingletonBean in that it doesn't add the bean to the list of bean references. Hence should be used for creating nested beans- Parameters:
clazz- The bean classconstructorArguments- The constructor arguments- Returns:
- A BeanConfiguration instance
-
createPrototypeBean
Creates a new prototype bean configuration. Differs from addPrototypeBean in that it doesn't add the bean to the list of bean references to be created via the getApplicationContext() method, hence can be used for creating nested beans- Parameters:
name- The bean name- Returns:
- A BeanConfiguration instance
-
createSingletonBean
Creates a new singleton bean configuration. Differs from addSingletonBean in that it doesn't add the bean to the list of bean references to be created via the getApplicationContext() method, hence can be used for creating nested beans- Parameters:
name- The bean name- Returns:
- A BeanConfiguration instance
-
addBeanConfiguration
Adds a bean configuration to the list of beans to be created.- Parameters:
beanName- The name of the bean in the contextbeanConfiguration- The BeanConfiguration instance
-
addBeanDefinition
Adds a Spring BeanDefinition. Differs from BeanConfiguration which is a factory class for creating BeanDefinition instances- Parameters:
name- The name of the beanbd- The BeanDefinition instance
-
containsBean
Returns whether the runtime spring config contains the specified bean.- Parameters:
name- The bean name- Returns:
- true if it does
-
getBeanConfig
Returns the BeanConfiguration for the specified name.- Parameters:
name- The name of the bean configuration- Returns:
- The BeanConfiguration
-
createBeanDefinition
Creates and returns the BeanDefinition that is regsitered within the given name or returns null.- Parameters:
name- The name of the bean definition- Returns:
- A BeanDefinition
-
registerPostProcessor
void registerPostProcessor(org.springframework.beans.factory.config.BeanFactoryPostProcessor processor) Registers a bean factory post processor with the context.- Parameters:
processor- The BeanFactoryPostProcessor instance
-
getBeanNames
-
registerBeansWithContext
void registerBeansWithContext(org.springframework.context.support.GenericApplicationContext applicationContext) Registers the beans held within this RuntimeSpringConfiguration instance with the given ApplicationContext.- Parameters:
applicationContext- The ApplicationContext instance
-
registerBeansWithRegistry
void registerBeansWithRegistry(org.springframework.beans.factory.support.BeanDefinitionRegistry registry) Registers the beans held within this RuntimeSpringConfiguration instance with the given BeanDefinitionRegistry.- Parameters:
registry- The BeanDefinitionRegistry instance
-
registerBeansWithConfig
Registers the beans held within this RuntimeSpringConfiguration instance with the given RuntimeSpringConfiguration.- Parameters:
targetSpringConfig- The RuntimeSpringConfiguration instance
-
addAbstractBean
\ Adds an abstract bean definition to the bean factory and returns the BeanConfiguration object.- Parameters:
name- The name of the bean- Returns:
- The BeanConfiguration object
-
addAlias
Adds an alias to a given bean name.- Parameters:
alias- The aliasbeanName- The bean
-
getBeanDefinition
Obtains a BeanDefinition instance for the given beanName.- Parameters:
beanName- The beanName- Returns:
- The BeanDefinition or null if it doesn't exit
-
setBeanFactory
void setBeanFactory(org.springframework.beans.factory.ListableBeanFactory beanFactory) Sets the BeanFactory implementation to use.- Parameters:
beanFactory- The BeanFactory implementation
-