The user should implement the invoke(MethodInvocation)
method to modify the original behavior. E.g. the following class
implements a tracing interceptor (traces all the calls on the
intercepted method(s)):
class TracingInterceptor implements MethodInterceptor {
Object invoke(MethodInvocation i) throws Throwable {
System.out.println("method "+i.getMethod()+" is called on "+
i.getThis()+" with args "+i.getArguments());
Object ret=i.proceed();
System.out.println("method "+i.getMethod()+" returns "+ret);
return ret;
}
}
| Modifier and Type | Method and Description |
|---|---|
| public Object | Returns: the result of the call toJoinpoint#proceed();
might be intercepted by the interceptorthe method invocation joinpoint invocation)Implement this method to perform extra treatments before and after the invocation. |
| invoke | back to summary |
|---|---|
| public Object invoke(MethodInvocation invocation) throws Throwable Implement this method to perform extra treatments before and
after the invocation. Polite implementations would certainly
like to invoke
| |