Class LocationInfo

java.lang.Object
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:
  • Field Details

    • 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:
    • 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 Details

    • 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 Details

    • 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.