public class LoadTimeWeaverAwareProcessor extends Object implements BeanPostProcessor, BeanFactoryAware
BeanPostProcessor
implementation that passes the context's default LoadTimeWeaver
to beans that implement the LoadTimeWeaverAware
interface.
Application contexts
will automatically register this with their underlying bean factory
,
provided that a default LoadTimeWeaver
is actually available.
Applications should not use this class directly.
LoadTimeWeaverAware
,
ConfigurableApplicationContext.LOAD_TIME_WEAVER_BEAN_NAME
Constructor and Description |
---|
LoadTimeWeaverAwareProcessor()
Create a new
LoadTimeWeaverAwareProcessor that will
auto-retrieve the LoadTimeWeaver from the containing
BeanFactory , expecting a bean named
"loadTimeWeaver" . |
LoadTimeWeaverAwareProcessor(BeanFactory beanFactory)
Create a new
LoadTimeWeaverAwareProcessor . |
LoadTimeWeaverAwareProcessor(LoadTimeWeaver loadTimeWeaver)
Create a new
LoadTimeWeaverAwareProcessor for the given
LoadTimeWeaver . |
Modifier and Type | Method and Description |
---|---|
Object |
postProcessAfterInitialization(Object bean,
String name)
Apply this BeanPostProcessor to the given new bean instance after any bean
initialization callbacks (like InitializingBean's
afterPropertiesSet
or a custom init-method). |
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). |
void |
setBeanFactory(BeanFactory beanFactory)
Callback that supplies the owning factory to a bean instance.
|
public LoadTimeWeaverAwareProcessor()
LoadTimeWeaverAwareProcessor
that will
auto-retrieve the LoadTimeWeaver
from the containing
BeanFactory
, expecting a bean named
"loadTimeWeaver"
.public LoadTimeWeaverAwareProcessor(LoadTimeWeaver loadTimeWeaver)
LoadTimeWeaverAwareProcessor
for the given
LoadTimeWeaver
.
If the given loadTimeWeaver
is null
, then a
LoadTimeWeaver
will be auto-retrieved from the containing
BeanFactory
, expecting a bean named
"loadTimeWeaver"
.
loadTimeWeaver
- the specific LoadTimeWeaver
that is to be usedpublic LoadTimeWeaverAwareProcessor(BeanFactory beanFactory)
LoadTimeWeaverAwareProcessor
.
The LoadTimeWeaver
will be auto-retrieved from
the given BeanFactory
, expecting a bean named
"loadTimeWeaver"
.
beanFactory
- the BeanFactory to retrieve the LoadTimeWeaver frompublic void setBeanFactory(BeanFactory beanFactory)
BeanFactoryAware
Invoked after the population of normal bean properties
but before an initialization callback such as
InitializingBean.afterPropertiesSet()
or a custom init-method.
setBeanFactory
in interface BeanFactoryAware
beanFactory
- owning BeanFactory (never null
).
The bean can immediately call methods on the factory.BeanInitializationException
public Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException
BeanPostProcessor
afterPropertiesSet
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 BeanPostProcessor
bean
- the new bean instancebeanName
- the name of the beannull
, no subsequent BeanPostProcessors will be invokedBeansException
- in case of errorsInitializingBean.afterPropertiesSet()
public Object postProcessAfterInitialization(Object bean, String name)
BeanPostProcessor
afterPropertiesSet
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 BeanPostProcessor
bean
- the new bean instancename
- the name of the beannull
, no subsequent BeanPostProcessors will be invokedInitializingBean.afterPropertiesSet()
,
FactoryBean