public class

ProxyFactory

extends ProxyCreatorSupport
java.lang.Object
   ↳ org.springframework.aop.framework.ProxyConfig
     ↳ org.springframework.aop.framework.AdvisedSupport
       ↳ org.springframework.aop.framework.ProxyCreatorSupport
         ↳ org.springframework.aop.framework.ProxyFactory

Class Overview

Factory for AOP proxies for programmatic use, rather than via a bean factory. This class provides a simple way of obtaining and configuring AOP proxies in code.

Summary

[Expand]
Inherited Fields
From class org.springframework.aop.framework.AdvisedSupport
Public Constructors
ProxyFactory()
Create a new ProxyFactory.
ProxyFactory(Object target)
Create a new ProxyFactory.
ProxyFactory(Class[] proxyInterfaces)
Create a new ProxyFactory.
ProxyFactory(Class proxyInterface, Interceptor interceptor)
Create a new ProxyFactory for the given interface and interceptor.
Public Methods
static <T> T getProxy(Class<T> proxyInterface, Interceptor interceptor)
Create a new proxy for the given interface and interceptor.
Object getProxy(ClassLoader classLoader)
Create a new proxy according to the settings in this factory.
static Object getProxy(TargetSource targetSource)
Create a proxy for the specified TargetSource that extends the target class of the TargetSource.
Object getProxy()
Create a new proxy according to the settings in this factory.
[Expand]
Inherited Methods
From class org.springframework.aop.framework.ProxyCreatorSupport
From class org.springframework.aop.framework.AdvisedSupport
From class org.springframework.aop.framework.ProxyConfig
From class java.lang.Object
From interface org.springframework.aop.TargetClassAware
From interface org.springframework.aop.framework.Advised

Public Constructors

public ProxyFactory ()

Create a new ProxyFactory.

public ProxyFactory (Object target)

Create a new ProxyFactory.

Will proxy all interfaces that the given target implements.

Parameters
target the target object to be proxied

public ProxyFactory (Class[] proxyInterfaces)

Create a new ProxyFactory.

No target, only interfaces. Must add interceptors.

Parameters
proxyInterfaces the interfaces that the proxy should implement

public ProxyFactory (Class proxyInterface, Interceptor interceptor)

Create a new ProxyFactory for the given interface and interceptor.

Convenience method for creating a proxy for a single interceptor, assuming that the interceptor handles all calls itself rather than delegating to a target, like in the case of remoting proxies.

Parameters
proxyInterface the interface that the proxy should implement
interceptor the interceptor that the proxy should invoke

Public Methods

public static T getProxy (Class<T> proxyInterface, Interceptor interceptor)

Create a new proxy for the given interface and interceptor.

Convenience method for creating a proxy for a single interceptor, assuming that the interceptor handles all calls itself rather than delegating to a target, like in the case of remoting proxies.

Parameters
proxyInterface the interface that the proxy should implement
interceptor the interceptor that the proxy should invoke
Returns
  • the proxy object
See Also
  • #ProxyFactory(Class, org.aopalliance.intercept.Interceptor)

public Object getProxy (ClassLoader classLoader)

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).

Parameters
classLoader the class loader to create the proxy with (or null for the low-level proxy facility's default)
Returns
  • the proxy object

public static Object getProxy (TargetSource targetSource)

Create a proxy for the specified TargetSource that extends the target class of the TargetSource.

Parameters
targetSource the TargetSource that the proxy should invoke
Returns
  • the proxy object

public Object getProxy ()

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).

Returns
  • the proxy object