org.apache.log4j.spi
Class LocationInfo

java.lang.Object
  extended by org.apache.log4j.spi.LocationInfo
All Implemented Interfaces:
Serializable

public class LocationInfo
extends Object
implements Serializable

The internal representation of caller location information.

Since:
0.8.3
See Also:
Serialized Form

Field Summary
 String fullInfo
          All available caller information, in the format fully.qualified.classname.of.caller.methodName(Filename.java:line)
static String NA
          When location information is not available the constant NA is returned.
static LocationInfo NA_LOCATION_INFO
          NA_LOCATION_INFO is provided for compatibility with log4j 1.3.
 
Constructor Summary
LocationInfo(String file, String classname, String method, String line)
          Create new instance.
LocationInfo(Throwable t, String fqnOfCallingClass)
          Instantiate location information based on a Throwable.
 
Method Summary
 String getClassName()
          Return the fully qualified class name of the caller making the logging request.
 String getFileName()
          Return the file name of the caller.
 String getLineNumber()
          Returns the line number of the caller.
 String getMethodName()
          Returns the method name of the caller.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

fullInfo

public String fullInfo
All available caller information, in the format fully.qualified.classname.of.caller.methodName(Filename.java:line)


NA

public static final String NA
When location information is not available the constant NA is returned. Current value of this string constant is ?.

See Also:
Constant Field Values

NA_LOCATION_INFO

public static final LocationInfo NA_LOCATION_INFO
NA_LOCATION_INFO is provided for compatibility with log4j 1.3.

Since:
1.2.15
Constructor Detail

LocationInfo

public LocationInfo(Throwable t,
                    String fqnOfCallingClass)
Instantiate location information based on a Throwable. We expect the Throwable t, to be in the format
        java.lang.Throwable
        ...
          at org.apache.log4j.PatternLayout.format(PatternLayout.java:413)
          at org.apache.log4j.FileAppender.doAppend(FileAppender.java:183)
        at org.apache.log4j.Category.callAppenders(Category.java:131)
        at org.apache.log4j.Category.log(Category.java:512)
        at callers.fully.qualified.className.methodName(FileName.java:74)
        ...
       

However, we can also deal with JIT compilers that "lose" the location information, especially between the parentheses.

Parameters:
t - throwable used to determine location, may be null.
fqnOfCallingClass - class name of first class considered part of the logging framework. Location will be site that calls a method on this class.

LocationInfo

public LocationInfo(String file,
                    String classname,
                    String method,
                    String line)
Create new instance.

Parameters:
file - source file name
classname - class name
method - method
line - source line number
Since:
1.2.15
Method Detail

getClassName

public String getClassName()
Return the fully qualified class name of the caller making the logging request.


getFileName

public String getFileName()
Return the file name of the caller.

This information is not always available.


getLineNumber

public String getLineNumber()
Returns the line number of the caller.

This information is not always available.


getMethodName

public String getMethodName()
Returns the method name of the caller.



Copyright © 1999-2012 Apache Software Foundation. All Rights Reserved.