类 DelegatePerTargetObjectIntroductionInterceptor
- java.lang.Object
- org.springframework.aop.support.IntroductionInfoSupport
- org.springframework.aop.support.DelegatePerTargetObjectIntroductionInterceptor
- 所有已实现的接口:
Serializable
,Advice
,Interceptor
,MethodInterceptor
,DynamicIntroductionAdvice
,IntroductionInfo
,IntroductionInterceptor
public class DelegatePerTargetObjectIntroductionInterceptor extends IntroductionInfoSupport implements IntroductionInterceptor
Convenient implementation of theIntroductionInterceptor
interface.This differs from
DelegatingIntroductionInterceptor
in that a single instance of this class can be used to advise multiple target objects, and each target object will have its own delegate (whereas DelegatingIntroductionInterceptor shares the same delegate, and hence the same state across all targets).The
suppressInterface
method can be used to suppress interfaces implemented by the delegate class but which should not be introduced to the owning AOP proxy.An instance of this class is serializable if the delegates are.
Note: There are some implementation similarities between this class and
DelegatingIntroductionInterceptor
that suggest a possible refactoring to extract a common ancestor class in the future.- 从以下版本开始:
- 2.0
- 作者:
- Adrian Colyer, Juergen Hoeller
- 另请参阅:
IntroductionInfoSupport.suppressInterface(java.lang.Class<?>)
,DelegatingIntroductionInterceptor
, 序列化表格
字段概要
从类继承的字段 org.springframework.aop.support.IntroductionInfoSupport
publishedInterfaces
构造器概要
构造器 构造器 说明 DelegatePerTargetObjectIntroductionInterceptor(Class<?> defaultImplType, Class<?> interfaceType)
方法概要
所有方法 实例方法 具体方法 修饰符和类型 方法 说明 protected Object
doProceed(MethodInvocation mi)
Proceed with the suppliedMethodInterceptor
.Object
invoke(MethodInvocation mi)
Subclasses may need to override this if they want to perform custom behaviour in around advice.从类继承的方法 org.springframework.aop.support.IntroductionInfoSupport
getInterfaces, implementInterfacesOnObject, implementsInterface, isMethodOnIntroducedInterface, suppressInterface
从类继承的方法 java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
从接口继承的方法 org.springframework.aop.DynamicIntroductionAdvice
implementsInterface
构造器详细资料
DelegatePerTargetObjectIntroductionInterceptor
public DelegatePerTargetObjectIntroductionInterceptor(Class<?> defaultImplType, Class<?> interfaceType)
方法详细资料
invoke
public Object invoke(MethodInvocation mi) throws Throwable
Subclasses may need to override this if they want to perform custom behaviour in around advice. However, subclasses should invoke this method, which handles introduced interfaces and forwarding to the target.- 指定者:
invoke
在接口中MethodInterceptor
- 参数:
mi
- the method invocation joinpoint- 返回:
- the result of the call to
Joinpoint.proceed()
; might be intercepted by the interceptor - 抛出:
Throwable
- if the interceptors or the target object throws an exception
doProceed
protected Object doProceed(MethodInvocation mi) throws Throwable
Proceed with the suppliedMethodInterceptor
. Subclasses can override this method to intercept method invocations on the target object which is useful when an introduction needs to monitor the object that it is introduced into. This method is never called forMethodInvocations
on the introduced interfaces.- 抛出:
Throwable