org.jfree.util
Class Log

java.lang.Object
  extended by org.jfree.util.Log

public class Log
extends java.lang.Object

A simple logging facility. Create a class implementing the LogTarget interface to use this feature.

Author:
Thomas Morgner

Nested Class Summary
static class Log.SimpleMessage
          A simple message class.
 
Constructor Summary
protected Log()
          Creates a new Log instance.
 
Method Summary
 void addTarget(LogTarget target)
          Adds a log target to this facility.
static LogContext createContext(java.lang.Class context)
          Creates a log context.
static LogContext createContext(java.lang.String context)
          Creates a log context.
static void debug(java.lang.Object message)
          A convenience method for logging a 'debug' message.
static void debug(java.lang.Object message, java.lang.Exception e)
          A convenience method for logging a 'debug' message.
protected static void defineLog(Log log)
          Redefines or clears the currently used log instance.
protected  void doLog(int level, java.lang.Object message)
          Logs a message to the main log stream.
protected  void doLog(int level, java.lang.Object message, java.lang.Exception e)
          Logs a message to the main log stream.
static void error(java.lang.Object message)
          A convenience method for logging an 'error' message.
static void error(java.lang.Object message, java.lang.Exception e)
          A convenience method for logging an 'error' message.
 int getDebuglevel()
          Returns the currently defined debug level.
static Log getInstance()
          Returns the singleton Log instance.
 LogTarget[] getTargets()
          Returns the registered logtargets.
static void info(java.lang.Object message)
          A convenience method for logging an 'info' message.
static void info(java.lang.Object message, java.lang.Exception e)
          A convenience method for logging an 'info' message.
 void init()
          Initializes the logging system.
protected  LogContext internalCreateContext(java.lang.String context)
          Creates a log context.
static boolean isDebugEnabled()
          Returns true, if the log level allows debug messages to be printed.
static boolean isErrorEnabled()
          Returns true, if the log level allows error messages to be printed.
static boolean isInfoEnabled()
          Returns true, if the log level allows informational messages to be printed.
static boolean isWarningEnabled()
          Returns true, if the log level allows warning messages to be printed.
static void log(int level, java.lang.Object message)
          Logs a message to the main log stream.
static void log(int level, java.lang.Object message, java.lang.Exception e)
          Logs a message to the main log stream.
 void removeTarget(LogTarget target)
          Removes a log target from this facility.
 void replaceTargets(LogTarget target)
          Replaces all log targets by the given target.
protected  void setDebuglevel(int debuglevel)
          Defines the debug level for the log system.
static void warn(java.lang.Object message)
          A convenience method for logging a 'warning' message.
static void warn(java.lang.Object message, java.lang.Exception e)
          A convenience method for logging a 'warning' message.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Log

protected Log()
Creates a new Log instance. The Log is used to manage the log targets.

Method Detail

getInstance

public static Log getInstance()
Returns the singleton Log instance. A new instance is created if necessary.

Returns:
the singleton instance.

defineLog

protected static void defineLog(Log log)
Redefines or clears the currently used log instance.

Parameters:
log - the new log instance or null, to return to the default implementation.

getDebuglevel

public int getDebuglevel()
Returns the currently defined debug level. The higher the level, the more details are printed.

Returns:
the debug level.

setDebuglevel

protected void setDebuglevel(int debuglevel)
Defines the debug level for the log system.

Parameters:
debuglevel - the new debug level
See Also:
getDebuglevel()

addTarget

public void addTarget(LogTarget target)
Adds a log target to this facility. Log targets get informed, via the LogTarget interface, whenever a message is logged with this class.

Parameters:
target - the target.

removeTarget

public void removeTarget(LogTarget target)
Removes a log target from this facility.

Parameters:
target - the target to remove.

getTargets

public LogTarget[] getTargets()
Returns the registered logtargets.

Returns:
the logtargets.

replaceTargets

public void replaceTargets(LogTarget target)
Replaces all log targets by the given target.

Parameters:
target - the new and only logtarget.

debug

public static void debug(java.lang.Object message)
A convenience method for logging a 'debug' message.

Parameters:
message - the message.

debug

public static void debug(java.lang.Object message,
                         java.lang.Exception e)
A convenience method for logging a 'debug' message.

Parameters:
message - the message.
e - the exception.

info

public static void info(java.lang.Object message)
A convenience method for logging an 'info' message.

Parameters:
message - the message.

info

public static void info(java.lang.Object message,
                        java.lang.Exception e)
A convenience method for logging an 'info' message.

Parameters:
message - the message.
e - the exception.

warn

public static void warn(java.lang.Object message)
A convenience method for logging a 'warning' message.

Parameters:
message - the message.

warn

public static void warn(java.lang.Object message,
                        java.lang.Exception e)
A convenience method for logging a 'warning' message.

Parameters:
message - the message.
e - the exception.

error

public static void error(java.lang.Object message)
A convenience method for logging an 'error' message.

Parameters:
message - the message.

error

public static void error(java.lang.Object message,
                         java.lang.Exception e)
A convenience method for logging an 'error' message.

Parameters:
message - the message.
e - the exception.

doLog

protected void doLog(int level,
                     java.lang.Object message)
Logs a message to the main log stream. All attached log targets will also receive this message. If the given log-level is higher than the given debug-level in the main config file, no logging will be done.

Parameters:
level - log level of the message.
message - text to be logged.

log

public static void log(int level,
                       java.lang.Object message)
Logs a message to the main log stream. All attached log targets will also receive this message. If the given log-level is higher than the given debug-level in the main config file, no logging will be done.

Parameters:
level - log level of the message.
message - text to be logged.

log

public static void log(int level,
                       java.lang.Object message,
                       java.lang.Exception e)
Logs a message to the main log stream. All attached logTargets will also receive this message. If the given log-level is higher than the given debug-level in the main config file, no logging will be done.

The exception's stacktrace will be appended to the log-stream

Parameters:
level - log level of the message.
message - text to be logged.
e - the exception, which should be logged.

doLog

protected void doLog(int level,
                     java.lang.Object message,
                     java.lang.Exception e)
Logs a message to the main log stream. All attached logTargets will also receive this message. If the given log-level is higher than the given debug-level in the main config file, no logging will be done.

The exception's stacktrace will be appended to the log-stream

Parameters:
level - log level of the message.
message - text to be logged.
e - the exception, which should be logged.

init

public void init()
Initializes the logging system. Implementors should override this method to supply their own log configuration.


isDebugEnabled

public static boolean isDebugEnabled()
Returns true, if the log level allows debug messages to be printed.

Returns:
true, if messages with an log level of DEBUG are allowed.

isInfoEnabled

public static boolean isInfoEnabled()
Returns true, if the log level allows informational messages to be printed.

Returns:
true, if messages with an log level of INFO are allowed.

isWarningEnabled

public static boolean isWarningEnabled()
Returns true, if the log level allows warning messages to be printed.

Returns:
true, if messages with an log level of WARN are allowed.

isErrorEnabled

public static boolean isErrorEnabled()
Returns true, if the log level allows error messages to be printed.

Returns:
true, if messages with an log level of ERROR are allowed.

createContext

public static LogContext createContext(java.lang.Class context)
Creates a log context.

Parameters:
context - the class (null not permitted).
Returns:
A log context.

createContext

public static LogContext createContext(java.lang.String context)
Creates a log context.

Parameters:
context - the label for the context.
Returns:
A log context.

internalCreateContext

protected LogContext internalCreateContext(java.lang.String context)
Creates a log context.

Parameters:
context - the name of the logging context (a common prefix).
Returns:
A log context.