public class BeanConfigurerSupport extends Object implements BeanFactoryAware, InitializingBean, DisposableBean
Subclasses may also need a custom metadata resolution strategy, in the
BeanWiringInfoResolver
interface. The default implementation looks for
a bean with the same name as the fully-qualified class name. (This is the default
name of the bean in a Spring XML file if the 'id
' attribute is not used.)
setBeanWiringInfoResolver(org.springframework.beans.factory.wiring.BeanWiringInfoResolver)
,
ClassNameBeanWiringInfoResolver
Modifier and Type | Field and Description |
---|---|
protected Log |
logger
Logger available to subclasses.
|
Constructor and Description |
---|
BeanConfigurerSupport() |
Modifier and Type | Method and Description |
---|---|
void |
afterPropertiesSet()
Check that a
BeanFactory has been set. |
void |
configureBean(Object beanInstance)
Configure the bean instance.
|
protected BeanWiringInfoResolver |
createDefaultBeanWiringInfoResolver()
Create the default BeanWiringInfoResolver to be used if none was
specified explicitly.
|
void |
destroy()
Release references to the
BeanFactory and
BeanWiringInfoResolver when the container is destroyed. |
void |
setBeanFactory(BeanFactory beanFactory)
Set the
BeanFactory in which this aspect must configure beans. |
void |
setBeanWiringInfoResolver(BeanWiringInfoResolver beanWiringInfoResolver)
Set the
BeanWiringInfoResolver to use. |
protected final Log logger
public void setBeanWiringInfoResolver(BeanWiringInfoResolver beanWiringInfoResolver)
BeanWiringInfoResolver
to use.
The default behavior is to look for a bean with the same name as the class. As an alternative, consider using annotation-driven bean wiring.
public void setBeanFactory(BeanFactory beanFactory)
BeanFactory
in which this aspect must configure beans.setBeanFactory
in interface BeanFactoryAware
beanFactory
- owning BeanFactory (never null
).
The bean can immediately call methods on the factory.BeanInitializationException
@Nullable protected BeanWiringInfoResolver createDefaultBeanWiringInfoResolver()
The default implementation builds a ClassNameBeanWiringInfoResolver
.
null
)public void afterPropertiesSet()
BeanFactory
has been set.afterPropertiesSet
in interface InitializingBean
public void destroy()
BeanFactory
and
BeanWiringInfoResolver
when the container is destroyed.destroy
in interface DisposableBean
public void configureBean(Object beanInstance)
Subclasses can override this to provide custom configuration logic. Typically called by an aspect, for all bean instances matched by a pointcut.
beanInstance
- the bean instance to configure (must not be null
)