[Java] Annotation Type Log4j

  • groovy.util.logging.Log4j
@Documented
@Retention(RetentionPolicy.SOURCE)
@Target({ElementType.TYPE})
@GroovyASTTransformationClass("org.codehaus.groovy.transform.LogASTTransformation")
public @interface Log4j

This local transform adds a logging ability to your program using Log4j 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.isNameEnabled() {
    log.name(exp)
 }
Here name is a place holder for info, debug, warning, error, etc. 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.
Since:
1.8.0

Element Summary

Optional Element Summary
Type Name and Description
String category
Default:
LogASTTransformation.DEFAULT_CATEGORY_NAME
Class<? extends LogASTTransformation.LoggingStrategy> loggingStrategy
Default:
Log4jLoggingStrategy.class
String value
Default:
"log"
String visibilityId
If specified, must match the "id" attribute in a VisibilityOptions annotation to enable a custom visibility.

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 LogASTTransformation.LoggingStrategy> loggingStrategy

Default:
Log4jLoggingStrategy.class

public String value

Default:
"log"

public String visibilityId

If specified, must match the "id" attribute in a VisibilityOptions annotation to enable a custom visibility.

Since:
3.0.0
Default:
Undefined.STRING

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