au.id.jericho.lib.html
Interface LoggerProvider


public interface LoggerProvider

Defines the interface for a factory class to provide Logger instances for each Source object.

It is not usually necessary for users to create implementations of this interface, as several predefined instances are defined which provide the most commonly required Logger implementations.

By default, a LoggerProvider is chosen automatically according to the algorithm described in the static Config.LoggerProvider property. This automatic choice can be overridden by setting the Config.LoggerProvider property manually with an instance of this interface, but this is also usually not necessary.


Field Summary
static LoggerProvider DISABLED
          A LoggerProvider implementation that disables all log messages.
static LoggerProvider JAVA
          A LoggerProvider implementation that wraps the standard java.util.logging system included in the Java SDK version 1.4 and above.
static LoggerProvider JCL
          A LoggerProvider implementation that wraps the Jakarta Commons Logging (JCL) framework.
static LoggerProvider LOG4J
          A LoggerProvider implementation that wraps the Apache Log4J framework.
static LoggerProvider SLF4J
          A LoggerProvider implementation that wraps the SLF4J framework.
static LoggerProvider STDERR
          A LoggerProvider implementation that sends all log messages to the standard error output stream (System.err).
 
Method Summary
 Logger getLogger(java.lang.String name)
          Creates a new Logger instance with the specified name.
 

Field Detail

DISABLED

static final LoggerProvider DISABLED
A LoggerProvider implementation that disables all log messages.


STDERR

static final LoggerProvider STDERR
A LoggerProvider implementation that sends all log messages to the standard error output stream (System.err).

The implementation uses the following code to create each logger:
new WriterLogger(new OutputStreamWriter(System.err),name)


JAVA

static final LoggerProvider JAVA
A LoggerProvider implementation that wraps the standard java.util.logging system included in the Java SDK version 1.4 and above.

This is the default used if no other logging framework is detected. See the description of the static Config.LoggerProvider property for more details.

The following mapping of logging levels is used:

Logger leveljava.util.logging.Level
ERRORSEVERE
WARNWARNING
INFOINFO
DEBUGFINE


JCL

static final LoggerProvider JCL
A LoggerProvider implementation that wraps the Jakarta Commons Logging (JCL) framework.

See the description of the static Config.LoggerProvider property for details on when this implementation is used as the default.

The following mapping of logging levels is used:

Logger levelorg.apache.commons.logging level
ERRORerror
WARNwarn
INFOinfo
DEBUGdebug


LOG4J

static final LoggerProvider LOG4J
A LoggerProvider implementation that wraps the Apache Log4J framework.

See the description of the static Config.LoggerProvider property for details on when this implementation is used as the default.

The following mapping of logging levels is used:

Logger levelorg.apache.log4j.Level
ERRORERROR
WARNWARN
INFOINFO
DEBUGDEBUG


SLF4J

static final LoggerProvider SLF4J
A LoggerProvider implementation that wraps the SLF4J framework.

See the description of the static Config.LoggerProvider property for details on when this implementation is used as the default.

The following mapping of logging levels is used:

Logger levelorg.slf4j.Logger level
ERRORerror
WARNwarn
INFOinfo
DEBUGdebug

Method Detail

getLogger

Logger getLogger(java.lang.String name)
Creates a new Logger instance with the specified name.

The name argument is used by the underlying logging implementation, and is normally a dot-separated name based on the package name or class name of the subsystem.

The name used for all automatically created Logger instances is "net.htmlparser.jericho".

Parameters:
name - the name of the logger, the use of which is determined by the underlying logging implementation, may be null.
Returns:
a new Logger instance with the specified name.