|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface AutowireCapableBeanFactory
Extension of the BeanFactory interface to be implemented by bean factories that are capable of autowiring, provided that they want to expose this functionality for existing bean instances.
This subinterface of BeanFactory is not meant to be used in normal application code: stick to BeanFactory or ListableBeanFactory for typical use cases.
Integration code for other frameworks can leverage this interface to wire and populate existing bean instances that Spring does not control the lifecycle of. This is particularly useful for WebWork Actions or Tapestry Page objects, for example.
Note that this interface is not implemented by ApplicationContext
facades, as it is hardly ever used by application code. It is available
on the internal BeanFactory of a context, though, accessible through
ConfigurableApplicationContext's getBeanFactory
method.
To get access to an AutowireCapableBeanFactory, you can also implement the BeanFactoryAware interface, which exposes the internal BeanFactory even when running in an ApplicationContext. Simply cast the passed-in BeanFactory to AutowireCapableBeanFactory.
BeanFactory
,
ListableBeanFactory
,
BeanFactoryAware
,
ConfigurableListableBeanFactory
,
ConfigurableApplicationContext.getBeanFactory()
Field Summary | |
---|---|
static int |
AUTOWIRE_AUTODETECT
Constant that indicates determining an appropriate autowire strategy through introspection of the bean class. |
static int |
AUTOWIRE_BY_NAME
Constant that indicates autowiring bean properties by name. |
static int |
AUTOWIRE_BY_TYPE
Constant that indicates autowiring bean properties by type. |
static int |
AUTOWIRE_CONSTRUCTOR
Constant that indicates autowiring a constructor. |
Fields inherited from interface org.springframework.beans.factory.BeanFactory |
---|
FACTORY_BEAN_PREFIX |
Method Summary | |
---|---|
Object |
applyBeanPostProcessorsAfterInitialization(Object existingBean,
String beanName)
Apply BeanPostProcessors to the given existing bean instance, invoking their postProcessAfterInitialization methods. |
Object |
applyBeanPostProcessorsBeforeInitialization(Object existingBean,
String beanName)
Apply BeanPostProcessors to the given existing bean instance, invoking their postProcessBeforeInitialization methods. |
void |
applyBeanPropertyValues(Object existingBean,
String beanName)
Apply the property values of the bean definition with the given name to the given bean instance. |
Object |
autowire(Class beanClass,
int autowireMode,
boolean dependencyCheck)
Create a new bean instance of the given class with the specified autowire strategy. |
void |
autowireBeanProperties(Object existingBean,
int autowireMode,
boolean dependencyCheck)
Autowire the bean properties of the given bean instance by name or type. |
Methods inherited from interface org.springframework.beans.factory.BeanFactory |
---|
containsBean, getAliases, getBean, getBean, getType, isSingleton |
Field Detail |
---|
static final int AUTOWIRE_BY_NAME
static final int AUTOWIRE_BY_TYPE
static final int AUTOWIRE_CONSTRUCTOR
static final int AUTOWIRE_AUTODETECT
Method Detail |
---|
Object autowire(Class beanClass, int autowireMode, boolean dependencyCheck) throws BeansException
beanClass
- the class of the bean to instantiateautowireMode
- by name or type, using the constants in this interfacedependencyCheck
- whether to perform a dependency check for objects
(not applicable to autowiring a constructor, thus ignored there)
BeansException
- if instantiation or wiring failedAUTOWIRE_BY_NAME
,
AUTOWIRE_BY_TYPE
,
AUTOWIRE_CONSTRUCTOR
,
AUTOWIRE_AUTODETECT
void autowireBeanProperties(Object existingBean, int autowireMode, boolean dependencyCheck) throws BeansException
existingBean
- the existing bean instanceautowireMode
- by name or type, using the constants in this interfacedependencyCheck
- whether to perform a dependency check for object
BeansException
- if wiring failedAUTOWIRE_BY_NAME
,
AUTOWIRE_BY_TYPE
void applyBeanPropertyValues(Object existingBean, String beanName) throws BeansException
Note: This method does not autowire bean properties;
it just applies explicitly defined property values.
Use the autowireBeanProperties
method to autowire
an existing bean instance.
existingBean
- the existing bean instancebeanName
- the name of the bean definition in the bean factory
NoSuchBeanDefinitionException
- if there is no bean with the given name
BeansException
- if applying the property values failedautowireBeanProperties(java.lang.Object, int, boolean)
Object applyBeanPostProcessorsBeforeInitialization(Object existingBean, String beanName) throws BeansException
postProcessBeforeInitialization
methods.
The returned bean instance may be a wrapper around the original.
existingBean
- the new bean instancebeanName
- the name of the bean
BeansException
- if any post-processing failedBeanPostProcessor.postProcessBeforeInitialization(java.lang.Object, java.lang.String)
Object applyBeanPostProcessorsAfterInitialization(Object existingBean, String beanName) throws BeansException
postProcessAfterInitialization
methods.
The returned bean instance may be a wrapper around the original.
existingBean
- the new bean instancebeanName
- the name of the bean
BeansException
- if any post-processing failedBeanPostProcessor.postProcessAfterInitialization(java.lang.Object, java.lang.String)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |