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(String name)
Creates a new Logger instance with the specified name.

Field Details

DISABLED

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

JAVA

public 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

public 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

public 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

public 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

STDERR

public 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)

Method Details

getLogger

public Logger getLogger(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.