groovy.lang

## Class TracingInterceptor

- java.lang.Object
- - groovy.lang.TracingInterceptor

All Implemented Interfaces:
  Interceptor

    public class TracingInterceptor
    extends java.lang.Object
    implements Interceptor

### Field Summary

Fields
`protected java.io.Writer` `writer`

### Constructor Summary

Constructors
Constructor and Description
`TracingInterceptor()`

### Method Summary

All Methods Instance Methods Concrete Methods
`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()`
`java.io.Writer` `getWriter()` Returns the writer associated with this interceptor.
`void` `setWriter(java.io.Writer writer)` Changes the writer associated with this interceptor.
`protected void` `write(java.lang.Object object, java.lang.String methodName, java.lang.Object[] arguments, java.lang.String origin)`
`protected void` `writeInfo(java.lang.Class aClass, java.lang.String methodName, java.lang.Object[] arguments)`

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

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

### Field Detail

#### writer

    protected java.io.Writer writer

### Constructor Detail

#### TracingInterceptor

    public TracingInterceptor()

### Method Detail

#### getWriter

    public java.io.Writer getWriter()

Returns the writer associated with this interceptor.

#### setWriter

    public void setWriter(java.io.Writer writer)

Changes the writer associated with this interceptor.

#### beforeInvoke

    public java.lang.Object beforeInvoke(java.lang.Object object,
                                         java.lang.String methodName,
                                         java.lang.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 java.lang.Object afterInvoke(java.lang.Object object,
                                        java.lang.String methodName,
                                        java.lang.Object[] arguments,
                                        java.lang.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(java.lang.Object object,
                         java.lang.String methodName,
                         java.lang.Object[] arguments,
                         java.lang.String origin)

#### writeInfo

    protected void writeInfo(java.lang.Class aClass,
                             java.lang.String methodName,
                             java.lang.Object[] arguments)
                      throws java.io.IOException

Throws:
  `java.io.IOException`