Groovy Documentation

groovy.util.logging
[Java] Annotation Type Log4j

java.lang.Object
  groovy.util.logging.Log4j

@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.
Authors:
Hamlet D'Arcy
Tomek Bujok
Since:
1.8.0


Nested Class Summary
static class Log4j.Log4jLoggingStrategy

   
Optional Element Summary
java.lang.Class loggingStrategy

@default Log4jLoggingStrategy.class

java.lang.String value

@default "log"

 
Method Summary
 
Methods inherited from class java.lang.Object
java.lang.Object#wait(long, int), java.lang.Object#wait(long), java.lang.Object#wait(), java.lang.Object#equals(java.lang.Object), java.lang.Object#toString(), java.lang.Object#hashCode(), java.lang.Object#getClass(), java.lang.Object#notify(), java.lang.Object#notifyAll()
 

Element Detail

loggingStrategy

public java.lang.Class loggingStrategy
@default Log4jLoggingStrategy.class


value

public java.lang.String value
@default "log"


 

Groovy Documentation