public abstract class AbstractBeanFactoryPointcutAdvisor extends AbstractPointcutAdvisor implements org.springframework.beans.factory.BeanFactoryAware
Specifying the name of an advice bean instead of the advice object itself (if running within a BeanFactory) increases loose coupling at initialization time, in order to not initialize the advice object until the pointcut actually matches.
setAdviceBeanName(java.lang.String)
,
DefaultBeanFactoryPointcutAdvisor
,
Serialized FormEMPTY_ADVICE
Constructor and Description |
---|
AbstractBeanFactoryPointcutAdvisor() |
Modifier and Type | Method and Description |
---|---|
Advice |
getAdvice()
Return the advice part of this aspect.
|
String |
getAdviceBeanName()
Return the name of the advice bean that this advisor refers to, if any.
|
void |
setAdvice(Advice advice)
Specify a particular instance of the target advice directly,
avoiding lazy resolution in
getAdvice() . |
void |
setAdviceBeanName(String adviceBeanName)
Specify the name of the advice bean that this advisor should refer to.
|
void |
setBeanFactory(org.springframework.beans.factory.BeanFactory beanFactory) |
String |
toString() |
equals, getOrder, hashCode, isPerInstance, setOrder
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
getPointcut
public void setAdviceBeanName(@Nullable String adviceBeanName)
An instance of the specified bean will be obtained on first access of this advisor's advice. This advisor will only ever obtain at most one single instance of the advice bean, caching the instance for the lifetime of the advisor.
getAdvice()
@Nullable public String getAdviceBeanName()
public void setBeanFactory(org.springframework.beans.factory.BeanFactory beanFactory)
setBeanFactory
in interface org.springframework.beans.factory.BeanFactoryAware
public void setAdvice(Advice advice)
getAdvice()
.public Advice getAdvice()
Advisor
getAdvice
in interface Advisor
MethodInterceptor
,
BeforeAdvice
,
ThrowsAdvice
,
AfterReturningAdvice