Class AspectJWeavingEnabler
java.lang.Object
org.springframework.context.weaving.AspectJWeavingEnabler
- All Implemented Interfaces:
org.springframework.beans.factory.Aware
,org.springframework.beans.factory.BeanClassLoaderAware
,org.springframework.beans.factory.config.BeanFactoryPostProcessor
,LoadTimeWeaverAware
,org.springframework.core.Ordered
public class AspectJWeavingEnabler
extends Object
implements org.springframework.beans.factory.config.BeanFactoryPostProcessor, org.springframework.beans.factory.BeanClassLoaderAware, LoadTimeWeaverAware, org.springframework.core.Ordered
Post-processor that registers AspectJ's
ClassPreProcessorAgentAdapter
with the Spring application context's default
LoadTimeWeaver
.- Since:
- 2.5
- Author:
- Juergen Hoeller, Ramnivas Laddad
-
Field Summary
FieldsFields inherited from interface org.springframework.core.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic void
enableAspectJWeaving
(LoadTimeWeaver weaverToUse, ClassLoader beanClassLoader) Enable AspectJ weaving with the givenLoadTimeWeaver
.int
getOrder()
void
postProcessBeanFactory
(org.springframework.beans.factory.config.ConfigurableListableBeanFactory beanFactory) void
setBeanClassLoader
(ClassLoader classLoader) void
setLoadTimeWeaver
(LoadTimeWeaver loadTimeWeaver) Set theLoadTimeWeaver
of this object's containingApplicationContext
.
-
Field Details
-
ASPECTJ_AOP_XML_RESOURCE
Theaop.xml
resource location.- See Also:
-
-
Constructor Details
-
AspectJWeavingEnabler
public AspectJWeavingEnabler()
-
-
Method Details
-
setBeanClassLoader
- Specified by:
setBeanClassLoader
in interfaceorg.springframework.beans.factory.BeanClassLoaderAware
-
setLoadTimeWeaver
Description copied from interface:LoadTimeWeaverAware
Set theLoadTimeWeaver
of this object's containingApplicationContext
.Invoked after the population of normal bean properties but before an initialization callback like
InitializingBean's
afterPropertiesSet()
or a custom init-method. Invoked afterApplicationContextAware's
setApplicationContext(..)
.NOTE: This method will only be called if there actually is a
LoadTimeWeaver
available in the application context. If there is none, the method will simply not get invoked, assuming that the implementing object is able to activate its weaving dependency accordingly.- Specified by:
setLoadTimeWeaver
in interfaceLoadTimeWeaverAware
- Parameters:
loadTimeWeaver
- theLoadTimeWeaver
instance (nevernull
)- See Also:
-
InitializingBean.afterPropertiesSet()
ApplicationContextAware.setApplicationContext(org.springframework.context.ApplicationContext)
-
getOrder
public int getOrder()- Specified by:
getOrder
in interfaceorg.springframework.core.Ordered
-
postProcessBeanFactory
public void postProcessBeanFactory(org.springframework.beans.factory.config.ConfigurableListableBeanFactory beanFactory) throws org.springframework.beans.BeansException - Specified by:
postProcessBeanFactory
in interfaceorg.springframework.beans.factory.config.BeanFactoryPostProcessor
- Throws:
org.springframework.beans.BeansException
-
enableAspectJWeaving
public static void enableAspectJWeaving(@Nullable LoadTimeWeaver weaverToUse, @Nullable ClassLoader beanClassLoader) Enable AspectJ weaving with the givenLoadTimeWeaver
.- Parameters:
weaverToUse
- the LoadTimeWeaver to apply to (ornull
for a default weaver)beanClassLoader
- the class loader to create a default weaver for (if necessary)
-