org.springframework.aop.framework
Class ProxyCreatorSupport

java.lang.Object
  extended by org.springframework.aop.framework.ProxyConfig
      extended by org.springframework.aop.framework.AdvisedSupport
          extended by org.springframework.aop.framework.ProxyCreatorSupport
All Implemented Interfaces:
Serializable, Advised, TargetClassAware
Direct Known Subclasses:
AspectJProxyFactory, ProxyFactory, ProxyFactoryBean

public class ProxyCreatorSupport
extends AdvisedSupport

Base class for proxy factories. Provides convenient access to a configurable AopProxyFactory.

Since:
2.0.3
Author:
Juergen Hoeller
See Also:
createAopProxy(), Serialized Form

Field Summary
 
Fields inherited from class org.springframework.aop.framework.AdvisedSupport
EMPTY_TARGET_SOURCE
 
Constructor Summary
ProxyCreatorSupport()
          Create a new ProxyCreatorSupport instance.
ProxyCreatorSupport(AopProxyFactory aopProxyFactory)
          Create a new ProxyCreatorSupport instance.
 
Method Summary
 void addListener(AdvisedSupportListener listener)
          Add the given AdvisedSupportListener to this proxy configuration.
protected  void adviceChanged()
          Propagate advice change event to all AdvisedSupportListeners.
protected  AopProxy createAopProxy()
          Subclasses should call this to get a new AOP proxy.
 AopProxyFactory getAopProxyFactory()
          Return the AopProxyFactory that this ProxyConfig uses.
protected  boolean isActive()
          Subclasses can call this to check whether any AOP proxies have been created yet.
 void removeListener(AdvisedSupportListener listener)
          Remove the given AdvisedSupportListener from this proxy configuration.
 void setAopProxyFactory(AopProxyFactory aopProxyFactory)
          Customize the AopProxyFactory, allowing different strategies to be dropped in without changing the core framework.
 
Methods inherited from class org.springframework.aop.framework.AdvisedSupport
addAdvice, addAdvice, addAdvisor, addAdvisor, addAdvisors, addAdvisors, addAllAdvisors, addInterface, adviceIncluded, copyConfigurationFrom, copyConfigurationFrom, countAdvicesOfType, getAdvisorChainFactory, getAdvisors, getAdvisorsInternal, getInterceptorsAndDynamicInterceptionAdvice, getProxiedInterfaces, getTargetClass, getTargetSource, indexOf, indexOf, isInterfaceProxied, isPreFiltered, removeAdvice, removeAdvisor, removeAdvisor, removeInterface, replaceAdvisor, setAdvisorChainFactory, setInterfaces, setPreFiltered, setTarget, setTargetClass, setTargetSource, toProxyConfigString, toString, updateAdvisorArray
 
Methods inherited from class org.springframework.aop.framework.ProxyConfig
copyFrom, isExposeProxy, isFrozen, isOpaque, isOptimize, isProxyTargetClass, 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
isExposeProxy, isFrozen, isProxyTargetClass, setExposeProxy
 

Constructor Detail

ProxyCreatorSupport

public ProxyCreatorSupport()
Create a new ProxyCreatorSupport instance.


ProxyCreatorSupport

public ProxyCreatorSupport(AopProxyFactory aopProxyFactory)
Create a new ProxyCreatorSupport instance.

Parameters:
aopProxyFactory - the AopProxyFactory to use
Method Detail

setAopProxyFactory

public void setAopProxyFactory(AopProxyFactory aopProxyFactory)
Customize the AopProxyFactory, allowing different strategies to be dropped in without changing the core framework.

Default is DefaultAopProxyFactory, using dynamic JDK proxies or CGLIB proxies based on the requirements.


getAopProxyFactory

public AopProxyFactory getAopProxyFactory()
Return the AopProxyFactory that this ProxyConfig uses.


addListener

public void addListener(AdvisedSupportListener listener)
Add the given AdvisedSupportListener to this proxy configuration.

Parameters:
listener - the listener to register

removeListener

public void removeListener(AdvisedSupportListener listener)
Remove the given AdvisedSupportListener from this proxy configuration.

Parameters:
listener - the listener to deregister

createAopProxy

protected final AopProxy createAopProxy()
Subclasses should call this to get a new AOP proxy. They should not create an AOP proxy with this as an argument.


adviceChanged

protected void adviceChanged()
Propagate advice change event to all AdvisedSupportListeners.

Overrides:
adviceChanged in class AdvisedSupport
See Also:
AdvisedSupportListener.adviceChanged(org.springframework.aop.framework.AdvisedSupport)

isActive

protected final boolean isActive()
Subclasses can call this to check whether any AOP proxies have been created yet.