public class AspectJAroundAdvice extends AbstractAspectJAdvice implements MethodInterceptor, Serializable
aspectJAdviceMethod, JOIN_POINT_KEY
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
Constructor and Description |
---|
AspectJAroundAdvice(Method aspectJAroundAdviceMethod,
AspectJExpressionPointcut pointcut,
AspectInstanceFactory aif) |
Modifier and Type | Method and Description |
---|---|
Object |
invoke(MethodInvocation mi)
Implement this method to perform extra treatments before and
after the invocation.
|
boolean |
isAfterAdvice()
Return whether this is an after advice.
|
boolean |
isBeforeAdvice()
Return whether this is a before advice.
|
protected org.aspectj.lang.ProceedingJoinPoint |
lazyGetProceedingJoinPoint(ProxyMethodInvocation rmi)
Return the ProceedingJoinPoint for the current invocation,
instantiating it lazily if it hasn't been bound to the thread already.
|
protected boolean |
supportsProceedingJoinPoint() |
argBinding, buildSafePointcut, calculateArgumentBindings, createParameterNameDiscoverer, currentJoinPoint, getAspectClassLoader, getAspectInstanceFactory, getAspectJAdviceMethod, getAspectName, getDeclarationOrder, getDiscoveredReturningGenericType, getDiscoveredReturningType, getDiscoveredThrowingType, getJoinPoint, getJoinPointMatch, getJoinPointMatch, getOrder, getPointcut, invokeAdviceMethod, invokeAdviceMethod, invokeAdviceMethodWithGivenArgs, setArgumentNames, setArgumentNamesFromStringArray, setAspectName, setDeclarationOrder, setReturningName, setReturningNameNoCheck, setThrowingName, setThrowingNameNoCheck, toString
public AspectJAroundAdvice(Method aspectJAroundAdviceMethod, AspectJExpressionPointcut pointcut, AspectInstanceFactory aif)
public boolean isBeforeAdvice()
AspectJPrecedenceInformation
isBeforeAdvice
in interface AspectJPrecedenceInformation
public boolean isAfterAdvice()
AspectJPrecedenceInformation
isAfterAdvice
in interface AspectJPrecedenceInformation
protected boolean supportsProceedingJoinPoint()
supportsProceedingJoinPoint
in class AbstractAspectJAdvice
@Nullable public Object invoke(MethodInvocation mi) throws Throwable
MethodInterceptor
Joinpoint.proceed()
.invoke
in interface MethodInterceptor
mi
- the method invocation joinpointJoinpoint.proceed()
;
might be intercepted by the interceptorThrowable
- if the interceptors or the target object
throws an exceptionprotected org.aspectj.lang.ProceedingJoinPoint lazyGetProceedingJoinPoint(ProxyMethodInvocation rmi)
rmi
- the current Spring AOP ReflectiveMethodInvocation,
which we'll use for attribute binding