org.springframework.aop.aspectj
Class MethodInvocationProceedingJoinPoint
java.lang.Object
org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint
- All Implemented Interfaces:
- org.aspectj.lang.JoinPoint, org.aspectj.lang.JoinPoint.StaticPart, org.aspectj.lang.ProceedingJoinPoint
public class MethodInvocationProceedingJoinPoint
- extends Object
- implements org.aspectj.lang.ProceedingJoinPoint, org.aspectj.lang.JoinPoint.StaticPart
Implementation of AspectJ ProceedingJoinPoint interface
wrapping an AOP Alliance MethodInvocation.
Note: the getThis()
method returns the current Spring AOP proxy.
The getTarget()
method returns the current Spring AOP target (which may be
null
if there is no target), and is a plain POJO without any advice.
If you want to call the object and have the advice take effect, use
getThis()
. A common example is casting the object to an
introduced interface in the implementation of an introduction.
Of course there is no such distinction between target and proxy in AspectJ.
- Since:
- 2.0
- Author:
- Rod Johnson, Juergen Hoeller, Adrian Colyer, Ramnivas Laddad
Nested classes/interfaces inherited from interface org.aspectj.lang.JoinPoint |
org.aspectj.lang.JoinPoint.EnclosingStaticPart, org.aspectj.lang.JoinPoint.StaticPart |
Fields inherited from interface org.aspectj.lang.JoinPoint |
ADVICE_EXECUTION, CONSTRUCTOR_CALL, CONSTRUCTOR_EXECUTION, EXCEPTION_HANDLER, FIELD_GET, FIELD_SET, INITIALIZATION, METHOD_CALL, METHOD_EXECUTION, PREINITIALIZATION, STATICINITIALIZATION, SYNCHRONIZATION_LOCK, SYNCHRONIZATION_UNLOCK |
MethodInvocationProceedingJoinPoint
public MethodInvocationProceedingJoinPoint(ProxyMethodInvocation methodInvocation)
- Create a new MethodInvocationProceedingJoinPoint, wrapping the given
Spring ProxyMethodInvocation object.
- Parameters:
methodInvocation
- the Spring ProxyMethodInvocation object
set$AroundClosure
public void set$AroundClosure(org.aspectj.runtime.internal.AroundClosure aroundClosure)
- Specified by:
set$AroundClosure
in interface org.aspectj.lang.ProceedingJoinPoint
proceed
public Object proceed()
throws Throwable
- Specified by:
proceed
in interface org.aspectj.lang.ProceedingJoinPoint
- Throws:
Throwable
proceed
public Object proceed(Object[] arguments)
throws Throwable
- Specified by:
proceed
in interface org.aspectj.lang.ProceedingJoinPoint
- Throws:
Throwable
getThis
public Object getThis()
- Returns the Spring AOP proxy. Cannot be
null
.
- Specified by:
getThis
in interface org.aspectj.lang.JoinPoint
getTarget
public Object getTarget()
- Returns the Spring AOP target. May be
null
if there is no target.
- Specified by:
getTarget
in interface org.aspectj.lang.JoinPoint
getArgs
public Object[] getArgs()
- Specified by:
getArgs
in interface org.aspectj.lang.JoinPoint
getSignature
public org.aspectj.lang.Signature getSignature()
- Specified by:
getSignature
in interface org.aspectj.lang.JoinPoint
- Specified by:
getSignature
in interface org.aspectj.lang.JoinPoint.StaticPart
getSourceLocation
public org.aspectj.lang.reflect.SourceLocation getSourceLocation()
- Specified by:
getSourceLocation
in interface org.aspectj.lang.JoinPoint
- Specified by:
getSourceLocation
in interface org.aspectj.lang.JoinPoint.StaticPart
getKind
public String getKind()
- Specified by:
getKind
in interface org.aspectj.lang.JoinPoint
- Specified by:
getKind
in interface org.aspectj.lang.JoinPoint.StaticPart
getId
public int getId()
- Specified by:
getId
in interface org.aspectj.lang.JoinPoint.StaticPart
getStaticPart
public org.aspectj.lang.JoinPoint.StaticPart getStaticPart()
- Specified by:
getStaticPart
in interface org.aspectj.lang.JoinPoint
toShortString
public String toShortString()
- Specified by:
toShortString
in interface org.aspectj.lang.JoinPoint
- Specified by:
toShortString
in interface org.aspectj.lang.JoinPoint.StaticPart
toLongString
public String toLongString()
- Specified by:
toLongString
in interface org.aspectj.lang.JoinPoint
- Specified by:
toLongString
in interface org.aspectj.lang.JoinPoint.StaticPart
toString
public String toString()
- Specified by:
toString
in interface org.aspectj.lang.JoinPoint
- Specified by:
toString
in interface org.aspectj.lang.JoinPoint.StaticPart
- Overrides:
toString
in class Object