org.codehaus.groovy.transform

## Interface LogASTTransformation.LoggingStrategy

- All Known Implementing Classes:
    Commons.CommonsLoggingStrategy, Log.JavaUtilLoggingStrategy, Log4j.Log4jLoggingStrategy, LogASTTransformation.AbstractLoggingStrategy, Slf4j.Slf4jLoggingStrategy
  Enclosing class:
    LogASTTransformation

      public static interface LogASTTransformation.LoggingStrategy

  A LoggingStrategy defines how to wire a new logger instance into an existing class. It is meant to be used with the @Log family of annotations to allow you to write your own Log annotation provider.

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `FieldNode` | `addLoggerFieldToClass(ClassNode classNode, java.lang.String fieldName)` In this method, you are given a ClassNode and a field name, and you must add a new Field onto the class.
    `boolean` | `isLoggingMethod(java.lang.String methodName)`
    `Expression` | `wrapLoggingMethodCall(Expression logVariable, java.lang.String methodName, Expression originalExpression)`

- - ### Method Detail

    - #### addLoggerFieldToClass

          FieldNode addLoggerFieldToClass(ClassNode classNode,
                                        java.lang.String fieldName)

      In this method, you are given a ClassNode and a field name, and you must add a new Field onto the class. Return the result of the ClassNode.addField operations.
      Parameters:
        `classNode` - the class that was originally annotated with the Log transformation.
        `fieldName` - the name of the logger field
      Returns:
        the FieldNode instance that was created and added to the class

    - #### isLoggingMethod

          boolean isLoggingMethod(java.lang.String methodName)

    - #### wrapLoggingMethodCall

          Expression wrapLoggingMethodCall(Expression logVariable,
                                         java.lang.String methodName,
                                         Expression originalExpression)