Groovy Documentation

groovy.lang
[Java] Interface Interceptor


public interface Interceptor

Implementers of this interface can be registered in the ProxyMetaClass for notifications about method calls for objects managed by the ProxyMetaClass. See groovy/lang/InterceptorTest.groovy for details.

Authors:
Dierk Koenig


Method Summary
java.lang.Object afterInvoke(java.lang.Object object, java.lang.String methodName, java.lang.Object[] arguments, java.lang.Object result)

This code is executed after the method is optionally called.

java.lang.Object beforeInvoke(java.lang.Object object, java.lang.String methodName, java.lang.Object[] arguments)

This code is executed before the method is optionally called.

boolean doInvoke()

@return whether the target method should be invoked at all.

 

Method Detail

afterInvoke

public java.lang.Object afterInvoke(java.lang.Object object, java.lang.String methodName, java.lang.Object[] arguments, java.lang.Object result)
This code is executed after the method is optionally called.
Parameters:
object - receiver object for the called method
methodName - name of the called method
arguments - arguments to the called method
result - result of the executed method call or result of beforeInvoke if method was not called
Returns:
any arbitrary result that can replace the result of the original method call. Typically, the result parameter is returned.


beforeInvoke

public java.lang.Object beforeInvoke(java.lang.Object object, java.lang.String methodName, java.lang.Object[] arguments)
This code is executed before the method is optionally called.
Parameters:
object - receiver object for the method call
methodName - name of the method to call
arguments - arguments to the method call
Returns:
any arbitrary result that replaces the result of the original method call only if doInvoke() returns false and afterInvoke() relays this result.


doInvoke

public boolean doInvoke()
Returns:
whether the target method should be invoked at all.


 

Groovy Documentation