au.id.jericho.lib.html

Interface Logger

Known Implementing Classes:
WriterLogger

public interface Logger

Defines the interface for handling log messages.

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

By default, logging is configured automatically according to the algorithm described in the static Config.LoggerProvider property.

An instance of a class that implements this interface is used by calling the Source.setLogger(Logger) method on the relevant Source object.

Four logging levels are defined in this interface. The logging level is specified only by the use of different method names, there is no class or type defining the levels. This makes the code required to wrap other logging frameworks much simpler and more efficient.

The four logging levels are:

IMPLEMENTATION NOTE: Ideally the java.util.logging.Logger class could have been used as a basis for logging, even if used to define a wrapper around other logging frameworks. This would have avoided the need to define yet another logging interface, but because java.util.logging.Logger is implemented very poorly, it is quite tricky to extend it as a wrapper. Other logging wrapper frameworks such as SLF4J or Jakarta Commons Logging provide good logging interfaces, but to avoid introducing dependencies it was decided to create this new interface.

See Also:
Config.LoggerProvider

Method Summary

void
debug(String message)
Logs a message at the DEBUG level.
void
error(String message)
Logs a message at the ERROR level.
void
info(String message)
Logs a message at the INFO level.
boolean
isDebugEnabled()
Indicates whether logging is enabled at the DEBUG level.
boolean
isErrorEnabled()
Indicates whether logging is enabled at the ERROR level.
boolean
isInfoEnabled()
Indicates whether logging is enabled at the INFO level.
boolean
isWarnEnabled()
Indicates whether logging is enabled at the WARN level.
void
warn(String message)
Logs a message at the WARN level.

Method Details

debug

public void debug(String message)
Logs a message at the DEBUG level.
Parameters:
message - the message to log.

error

public void error(String message)
Logs a message at the ERROR level.
Parameters:
message - the message to log.

info

public void info(String message)
Logs a message at the INFO level.
Parameters:
message - the message to log.

isDebugEnabled

public boolean isDebugEnabled()
Indicates whether logging is enabled at the DEBUG level.
Returns:
true if logging is enabled at the DEBUG level, otherwise false.

isErrorEnabled

public boolean isErrorEnabled()
Indicates whether logging is enabled at the ERROR level.
Returns:
true if logging is enabled at the ERROR level, otherwise false.

isInfoEnabled

public boolean isInfoEnabled()
Indicates whether logging is enabled at the INFO level.
Returns:
true if logging is enabled at the INFO level, otherwise false.

isWarnEnabled

public boolean isWarnEnabled()
Indicates whether logging is enabled at the WARN level.
Returns:
true if logging is enabled at the WARN level, otherwise false.

warn

public void warn(String message)
Logs a message at the WARN level.
Parameters:
message - the message to log.