Package groovy.lang

# Class TracingInterceptor

java.lang.Object
groovy.lang.TracingInterceptor

All Implemented Interfaces:
  `Interceptor`

    public class TracingInterceptor
    extends Object
    implements Interceptor

- ## Field Summary

  Fields
  Modifier and Type | Field | Description
  --- | --- | ---
  `protected Writer` | `writer` |

- ## Constructor Summary

  Constructors
  Constructor | Description
  --- | ---
  `TracingInterceptor()` |

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `Object` | `afterInvoke​(Object object, String methodName, Object[] arguments, Object result)` | This code is executed after the method is optionally called.
  `Object` | `beforeInvoke​(Object object, String methodName, Object[] arguments)` | This code is executed before the method is optionally called.
  `boolean` | `doInvoke()` |
  `Writer` | `getWriter()` | Returns the writer associated with this interceptor.
  `void` | `setWriter​(Writer writer)` | Changes the writer associated with this interceptor.
  `protected void` | `write​(Object object, String methodName, Object[] arguments, String origin)` |
  `protected void` | `writeInfo​(Class aClass, String methodName, Object[] arguments)` |

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Field Details

  - ### writer

    protected Writer writer

- ## Constructor Details

  - ### TracingInterceptor

    public TracingInterceptor()

- ## Method Details

  - ### getWriter

    public Writer getWriter()
    Returns the writer associated with this interceptor.

  - ### setWriter

    public void setWriter​(Writer writer)
    Changes the writer associated with this interceptor.

  - ### beforeInvoke

    public Object beforeInvoke​(Object object, String methodName, Object[] arguments)
    Description copied from interface: `Interceptor`
    This code is executed before the method is optionally called.
    Specified by:
      `beforeInvoke` in interface `Interceptor`
    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

    public Object afterInvoke​(Object object, String methodName, Object[] arguments, Object result)
    Description copied from interface: `Interceptor`
    This code is executed after the method is optionally called.
    Specified by:
      `afterInvoke` in interface `Interceptor`
    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

    public boolean doInvoke()
    Specified by:
      `doInvoke` in interface `Interceptor`
    Returns:
      whether the target method should be invoked at all.

  - ### write

    protected void write​(Object object, String methodName, Object[] arguments, String origin)

  - ### writeInfo

    protected void writeInfo​(Class aClass, String methodName, Object[] arguments) throws IOException
    Throws:
      `IOException`