|
The Spring Framework | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.springframework.beans.factory.config.InstantiationAwareBeanPostProcessorAdapter
public abstract class InstantiationAwareBeanPostProcessorAdapter
Adapter implementing all methods on SmartInstantiationAwareBeanPostProcessor
as no-ops, which will not change normal processing of each bean instantiated
by the container. Subclasses may override merely those methods that they are
actually interested in.
| Constructor Summary | |
|---|---|
InstantiationAwareBeanPostProcessorAdapter()
|
|
| Method Summary | |
|---|---|
Object |
postProcessAfterInitialization(Object bean,
String beanName)
Apply this BeanPostProcessor to the given new bean instance after any bean initialization callbacks (like InitializingBean's afterPropertiesSet
or a custom init-method). |
boolean |
postProcessAfterInstantiation(Object bean,
String beanName)
Perform operations after the bean has been instantiated, via a constructor or factory method, but before Spring property population (from explicit properties or autowiring) occurs. |
Object |
postProcessBeforeInitialization(Object bean,
String beanName)
Apply this BeanPostProcessor to the given new bean instance before any bean initialization callbacks (like InitializingBean's afterPropertiesSet
or a custom init-method). |
Object |
postProcessBeforeInstantiation(Class beanClass,
String beanName)
Apply this BeanPostProcessor before the target bean gets instantiated. |
PropertyValues |
postProcessPropertyValues(PropertyValues pvs,
PropertyDescriptor[] pds,
Object bean,
String beanName)
Post-process the given property values before the factory applies them to the given bean. |
Class |
predictBeanType(Class beanClass,
String beanName)
Predict the type of the bean to be eventually returned from this processor's InstantiationAwareBeanPostProcessor.postProcessBeforeInstantiation(java.lang.Class, java.lang.String) callback. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public InstantiationAwareBeanPostProcessorAdapter()
| Method Detail |
|---|
public Class predictBeanType(Class beanClass,
String beanName)
SmartInstantiationAwareBeanPostProcessorInstantiationAwareBeanPostProcessor.postProcessBeforeInstantiation(java.lang.Class, java.lang.String) callback.
predictBeanType in interface SmartInstantiationAwareBeanPostProcessorbeanClass - the raw class of the beanbeanName - the name of the bean
null if not predictable
public Object postProcessBeforeInstantiation(Class beanClass,
String beanName)
throws BeansException
InstantiationAwareBeanPostProcessorIf a non-null object is returned by this method, the bean creation process
will be short-circuited. The only further processing applied is the
BeanPostProcessor.postProcessAfterInitialization(java.lang.Object, java.lang.String) callback from the configured
BeanPostProcessors.
This callback will only be applied to bean definitions with a bean class. In particular, it will not be applied to beans with a "factory-method".
Post-processors may implement the extended
SmartInstantiationAwareBeanPostProcessor interface in order
to predict the type of the bean object that they are going to return here.
postProcessBeforeInstantiation in interface InstantiationAwareBeanPostProcessorbeanClass - the class of the bean to be instantiatedbeanName - the name of the bean
null to proceed with default instantiation
BeansException - in case of errorsAbstractBeanDefinition.hasBeanClass(),
AbstractBeanDefinition.getFactoryMethodName()
public boolean postProcessAfterInstantiation(Object bean,
String beanName)
throws BeansException
InstantiationAwareBeanPostProcessor
postProcessAfterInstantiation in interface InstantiationAwareBeanPostProcessorbean - the bean instance created, but whose properties have not yet been setbeanName - the name of the bean
true if properties should be set on the bean; false
if property population should be skipped. Normal implementations should return true.
Returning false will also prevent any subsequent InstantiationAwareBeanPostProcessor
instances being invoked on this bean instance.
BeansException - in case of errors
public PropertyValues postProcessPropertyValues(PropertyValues pvs,
PropertyDescriptor[] pds,
Object bean,
String beanName)
throws BeansException
InstantiationAwareBeanPostProcessorAlso allows for replacing the property values to apply, typically through creating a new MutablePropertyValues instance based on the original PropertyValues, adding or removing specific values.
postProcessPropertyValues in interface InstantiationAwareBeanPostProcessorpvs - the property values that the factory is about to apply (never null)pds - the relevant property descriptors for the target bean (with ignored
dependency types - which the factory handles specifically - already filtered out)bean - the bean instance created, but whose properties have not yet been setbeanName - the name of the bean
null
to skip property population
BeansException - in case of errorsMutablePropertyValues
public Object postProcessBeforeInitialization(Object bean,
String beanName)
throws BeansException
BeanPostProcessorafterPropertiesSet
or a custom init-method). The bean will already be populated with property values.
The returned bean instance may be a wrapper around the original.
postProcessBeforeInitialization in interface BeanPostProcessorbean - the new bean instancebeanName - the name of the bean
BeansException - in case of errorsInitializingBean.afterPropertiesSet()
public Object postProcessAfterInitialization(Object bean,
String beanName)
throws BeansException
BeanPostProcessorafterPropertiesSet
or a custom init-method). The bean will already be populated with property values.
The returned bean instance may be a wrapper around the original.
In case of a FactoryBean, this callback will be invoked for both the FactoryBean
instance and the objects created by the FactoryBean (as of Spring 2.0). The
post-processor can decide whether to apply to either the FactoryBean or created
objects or both through corresponding bean instanceof FactoryBean checks.
This callback will also be invoked after a short-circuiting triggered by a
InstantiationAwareBeanPostProcessor.postProcessBeforeInstantiation(java.lang.Class, java.lang.String) method,
in contrast to all other BeanPostProcessor callbacks.
postProcessAfterInitialization in interface BeanPostProcessorbean - the new bean instancebeanName - the name of the bean
BeansException - in case of errorsInitializingBean.afterPropertiesSet(),
FactoryBean
|
The Spring Framework | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||