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
An implementation of the 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 instance) as 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. There is no such distinction between target and proxy in AspectJ itself.

Since:
2.0
Author:
Rod Johnson, Juergen Hoeller, Adrian Colyer, Ramnivas Laddad
  • Constructor Details

    • MethodInvocationProceedingJoinPoint

      public MethodInvocationProceedingJoinPoint(ProxyMethodInvocation methodInvocation)
      Create a new MethodInvocationProceedingJoinPoint, wrapping the given Spring ProxyMethodInvocation object.
      Parameters:
      methodInvocation - the Spring ProxyMethodInvocation object
  • Method Details

    • set$AroundClosure

      public void set$AroundClosure(org.aspectj.runtime.internal.AroundClosure aroundClosure)
      Specified by:
      set$AroundClosure in interface org.aspectj.lang.ProceedingJoinPoint
    • proceed

      @Nullable public Object proceed() throws Throwable
      Specified by:
      proceed in interface org.aspectj.lang.ProceedingJoinPoint
      Throws:
      Throwable
    • proceed

      @Nullable 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

      @Nullable 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 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