public class

LocationInfo

extends Object
implements Serializable
java.lang.Object
   ↳ org.apache.log4j.spi.LocationInfo

Class Overview

The internal representation of caller location information.

Summary

Constants
String NA When location information is not available the constant NA is returned.
Fields
public static final LocationInfo NA_LOCATION_INFO NA_LOCATION_INFO is provided for compatibility with log4j 1.3.
public String fullInfo All available caller information, in the format fully.qualified.classname.of.caller.methodName(Filename.java:line)
Public Constructors
LocationInfo(Throwable t, String fqnOfCallingClass)
Instantiate location information based on a Throwable.
LocationInfo(String file, String classname, String method, String line)
Create new instance.
Public Methods
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.
[Expand]
Inherited Methods
From class java.lang.Object

Constants

public static final String NA

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

Constant Value: "?"

Fields

public static final LocationInfo NA_LOCATION_INFO

NA_LOCATION_INFO is provided for compatibility with log4j 1.3.

public String fullInfo

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

Public Constructors

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.

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

Public Methods

public String getClassName ()

Return the fully qualified class name of the caller making the logging request.

public String getFileName ()

Return the file name of the caller.

This information is not always available.

public String getLineNumber ()

Returns the line number of the caller.

This information is not always available.

public String getMethodName ()

Returns the method name of the caller.