Overview | Package | Class | Deprecated | Index | Help
| Groovy Documentation
| FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | METHOD | DETAIL: FIELD | METHOD

## org.codehaus.groovy.grails.commons.metaclass
[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. Based off the original work in Groovy core, but uses a callback object instead for thread safety.

Authors:
  Dierk Koenig
  Graeme Rocher

Since:
  0.2

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, InvocationCallback callback)` This code is executed before the method is optionally called.

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, InvocationCallback callback)

  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
    `callback` - The callback object
  Returns:
    any arbitrary result that replaces the result of the original method call only if the callback object is marked relays this result.

Groovy Documentation