## org.apache.log4j.spi
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:
  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-2010 Apache Software Foundation. All Rights Reserved.