[Java] Annotation Type Log

  • groovy.util.logging.Log

This local transform adds a logging ability to your program using java.util.logging. Every method call on a unbound variable named log will be mapped to a call to the logger. For this a log field will be inserted in the class. If the field already exists the usage of this transform will cause a compilation error. The method name will be used to determine what to call on the logger.

 log.name(exp)
 
is mapped to
 if (log.isLoggable(Level.NAME) {
    log.name(exp)
 }
Here name is a place holder for info, fine, finer, finest, config, warning, severe. NAME is name transformed to upper case. if anything else is used it will result in an exception at runtime. If the expression exp is a constant or only a variable access the method call will not be transformed. But this will still cause a call on the injected logger.
Authors:
Guillaume Laforge
Jochen Theodorou
Dinko Srkoc
Hamlet D'Arcy
Raffaele Cigni
Alberto Vilches Raton
Since:
1.8.0

Nested Class Summary

Nested classes
Modifiers Name Description
static class Log.JavaUtilLoggingStrategy This class contains the logic of how to weave a Java Util Logging logger into the host class.

Element Summary

Optional Element Summary
Type Name and Description
String category
@default LogASTTransformation.DEFAULT_CATEGORY_NAME
Class<? extends LoggingStrategy> loggingStrategy
@default JavaUtilLoggingStrategy.class
String value
@default "log"

Inherited Methods Summary

Inherited Methods
Methods inherited from class Name
class Object wait, wait, wait, equals, toString, hashCode, getClass, notify, notifyAll

Element Detail

public String category

@default LogASTTransformation.DEFAULT_CATEGORY_NAME

public Class<? extends LoggingStrategy> loggingStrategy

@default JavaUtilLoggingStrategy.class

public String value

@default "log"

© 2003-2020 The Apache Software Foundation
Licensed under the Apache license.
https://docs.groovy-lang.org/2.4.21/html/gapi/groovy/util/logging/Log.html