spring-framework / org.springframework.aop.aspectj.annotation / AspectJProxyFactory

AspectJProxyFactory

open class AspectJProxyFactory : ProxyCreatorSupport

AspectJ-based proxy factory, allowing for programmatic building of proxies which include AspectJ aspects (code style as well Java 5 annotation style).

Author
Rob Harrop

Author
Juergen Hoeller

Author
Ramnivas Laddad

Since
2.0

See Also
#addAspect(Object)#addAspect(Class)#getProxy()#getProxy(ClassLoader)org.springframework.aop.framework.ProxyFactory

Constructors

<init>

AspectJProxyFactory()

Create a new AspectJProxyFactory.

AspectJProxyFactory(target: Any)

Create a new AspectJProxyFactory.

Will proxy all interfaces that the given target implements.

AspectJProxyFactory(vararg interfaces: Class<*>)

Create a new AspectJProxyFactory. No target, only interfaces. Must add interceptors.

Functions

addAspect

open fun addAspect(aspectInstance: Any): Unit

Add the supplied aspect instance to the chain. The type of the aspect instance supplied must be a singleton aspect. True singleton lifecycle is not honoured when using this method - the caller is responsible for managing the lifecycle of any aspects added in this way.

open fun addAspect(aspectClass: Class<*>): Unit

Add an aspect of the supplied type to the end of the advice chain.

getProxy

open fun <T : Any> getProxy(): T

Create a new proxy according to the settings in this factory.

Can be called repeatedly. Effect will vary if we've added or removed interfaces. Can add and remove interceptors.

Uses a default class loader: Usually, the thread context class loader (if necessary for proxy creation).

open fun <T : Any> getProxy(classLoader: ClassLoader): T

Create a new proxy according to the settings in this factory.

Can be called repeatedly. Effect will vary if we've added or removed interfaces. Can add and remove interceptors.

Uses the given class loader (if necessary for proxy creation).