Search code examples
javaaopguiceaopalliance

AopAlliance (Guice): Call another method from an intercepted method


In method interception with AopAlliance is there a way to call a method from the class who's method was intercepted?

For example:

public class MyClass {
     public void interceptMe() {}
     public void invokeMe() {}
}

and

public class MyInterceptor implements MethodInterceptor {
     public Object invoke(MethodInvocation invocation) throws Throwable {
          // This is where MyClass.interceptMe() is intercepted
          // I would like to call MyClass.invokeMe() for the instance of the class who's method was intercepted
     }
}

I will be happy to provide more details if needed.


Solution

  • How about

    ((MyClass)invocation.getThis()).invokeMe()
    

    http://aopalliance.sourceforge.net/doc/org/aopalliance/intercept/MethodInvocation.html