org.springframework.aop.framework
Class ProxyFactory

java.lang.Object
  extended byorg.springframework.aop.framework.ProxyConfig
      extended byorg.springframework.aop.framework.AdvisedSupport
          extended byorg.springframework.aop.framework.ProxyFactory
All Implemented Interfaces:
Advised, Serializable

public class ProxyFactory
extends AdvisedSupport

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.

Since:
14-Mar-2003
Author:
Rod Johnson
See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.springframework.aop.framework.AdvisedSupport
advisorChainFactory, EMPTY_TARGET_SOURCE, targetSource
 
Fields inherited from class org.springframework.aop.framework.ProxyConfig
exposeProxy, logger
 
Constructor Summary
ProxyFactory()
          Create a new ProxyFactory.
ProxyFactory(Class[] interfaces)
          Create a new ProxyFactory.
ProxyFactory(Object target)
          Create a new ProxyFactory.
 
Method Summary
 Object getProxy()
          Create a new proxy according to the settings in this factory.
static Object getProxy(Class proxyInterface, Interceptor interceptor)
          Create a new proxy for the given interface and interceptor.
 
Methods inherited from class org.springframework.aop.framework.AdvisedSupport
addAdvice, addAdvice, addAdvisor, addAdvisor, addAdvisor, addAfterReturningAdvice, addBeforeAdvice, addInterceptor, addInterceptor, addInterface, addListener, addThrowsAdvice, adviceIncluded, copyConfigurationFrom, copyConfigurationFrom, countAdvicesOfType, countInterceptorsOfType, createAopProxy, getAdvisorChainFactory, getAdvisors, getProxiedInterfaces, getTargetSource, indexOf, indexOf, indexOf, interceptorIncluded, isActive, isInterfaceProxied, readResolve, removeAdvice, removeAdvisor, removeAdvisor, removeInterceptor, removeInterface, removeListener, replaceAdvisor, setAdvisorChainFactory, setInterfaces, setTarget, setTargetSource, toProxyConfigString, toString, writeReplace
 
Methods inherited from class org.springframework.aop.framework.ProxyConfig
copyFrom, getAopProxyFactory, getExposeProxy, getOpaque, getOptimize, getProxyTargetClass, isExposeProxy, isFrozen, isOpaque, isOptimize, isProxyTargetClass, setAopProxyFactory, setExposeProxy, setFrozen, setOpaque, setOptimize, setProxyTargetClass
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.springframework.aop.framework.Advised
getExposeProxy, getProxyTargetClass, isExposeProxy, isFrozen, isProxyTargetClass, setExposeProxy
 

Constructor Detail

ProxyFactory

public ProxyFactory()
Create a new ProxyFactory.


ProxyFactory

public ProxyFactory(Object target)
             throws AopConfigException
Create a new ProxyFactory. Proxy all interfaces of the given target.


ProxyFactory

public ProxyFactory(Class[] interfaces)
Create a new ProxyFactory. No target, only interfaces. Must add interceptors.

Method Detail

getProxy

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.

Returns:
the new proxy

getProxy

public static Object getProxy(Class 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 new proxy


Copyright (C) 2003-2004 The Spring Framework Project.