Interface LogASTTransformation.LoggingStrategy

All Known Subinterfaces:
LogASTTransformation.LoggingStrategyV2
All Known Implementing Classes:
Commons.CommonsLoggingStrategy, Log.JavaUtilLoggingStrategy, Log4j.Log4jLoggingStrategy, Log4j2.Log4j2LoggingStrategy, LogASTTransformation.AbstractLoggingStrategy, LogASTTransformation.AbstractLoggingStrategyV2, 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 Details

    • addLoggerFieldToClass

      FieldNode addLoggerFieldToClass​(ClassNode classNode, java.lang.String fieldName, java.lang.String categoryName)
      In this method, you are given a ClassNode, a field name and a category 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
      categoryName - the name of the logging category
      Returns:
      the FieldNode instance that was created and added to the class
    • isLoggingMethod

      boolean isLoggingMethod​(java.lang.String methodName)
    • getCategoryName

      java.lang.String getCategoryName​(ClassNode classNode, java.lang.String categoryName)
    • wrapLoggingMethodCall

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