Class Log4J2LoggerFactory

Object
LoggerFactory<Logger>
Log4J2LoggerFactory

public class Log4J2LoggerFactory extends LoggerFactory<Logger>
A factory for loggers that redirect all Java logging events to the Apache's Log4J framework.

The GeoTools.init() method will select Log4J2LoggerFactory if log4j api is available on the classpath, however if you have several logging libraries on the classpath call GeoTools.setLoggerFactory(Log4J2LoggerFactory#getInstance()).

Since:
27
Author:
Jody Garnett (GeoCat)
  • Constructor Details

  • Method Details

    • getInstance

      public static Log4J2LoggerFactory getInstance() throws NoClassDefFoundError
      Returns the unique instance of this factory.
      Throws:
      NoClassDefFoundError - if Apache's Log class was not found on the classpath.
    • getImplementation

      protected Logger getImplementation(String name)
      Returns the implementation to use for the logger of the specified name, or null if the logger would delegates to Java logging anyway.
      Specified by:
      getImplementation in class LoggerFactory<Logger>
      Parameters:
      name - The name of the logger.
      Returns:
      The logger as an object of the target logging framework (Log4J, SLF4J, etc.), or null if the target framework would redirect to the Java logging framework.
    • wrap

      protected Logger wrap(String name, Logger implementation)
      Wraps the specified implementation in a Java logger.
      Specified by:
      wrap in class LoggerFactory<Logger>
      Parameters:
      name - The name of the logger.
      implementation - An implementation returned by LoggerFactory.getImplementation(java.lang.String).
      Returns:
      A new logger wrapping the specified implementation.
    • unwrap

      protected Logger unwrap(Logger logger)
      Returns the implementation wrapped by the specified logger, or null if none.
      Specified by:
      unwrap in class LoggerFactory<Logger>
      Parameters:
      logger - The logger to test.
      Returns:
      The implementation wrapped by the specified logger, or null if none.
    • lookupConfiguration

      public String lookupConfiguration()
      Indication of Log4J configuration details, often a configuration filename or setting.
      Overrides:
      lookupConfiguration in class LoggerFactory<Logger>
      Returns:
      Log4J configuration details, often a filename or setting.