Package groovy.lang

Interface Interceptor

  • All Known Subinterfaces:
    PropertyAccessInterceptor
    All Known Implementing Classes:
    BenchmarkInterceptor, TracingInterceptor

    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.
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      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()  
    • Method Detail

      • beforeInvoke

        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.
      • afterInvoke

        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.
      • doInvoke

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