tuwien.auto.calimero.log
Class LogService

java.lang.Object
  extended by tuwien.auto.calimero.log.LogService

public class LogService
extends java.lang.Object

A LogService is used to categorize logging information with regard to logging level and topic, and offer it to its LogWriters.

The default log level by the LogService is LogLevel.ALL. This means all log information levels (except LogLevel.OFF) will be offered.

LogWriter can register at a log service to receive information the log service is offering to its writers.

Use LogManager to create new or get existing log services.
Usage:
- A LogService may be created for different parts in calimero, so it distinguishes log information by source.
- A LogService may be created for a particular subject, i.e. to divide information into topics.
A log service may restrict offered information through its own log level.
- ...

See Also:
LogLevel, LogWriter

Field Summary
protected  java.lang.String name
          Name of this log service.
 
Constructor Summary
protected LogService(java.lang.String name)
          Creates a new log service with the specified name.
protected LogService(java.lang.String name, LogLevel level)
          Creates a new log service with the specified name and log level.
 
Method Summary
 void addWriter(LogWriter writer)
          Adds the writer to this log service.
 void error(java.lang.String msg)
          Offers msg with log level LogLevel.ERROR.
 void error(java.lang.String msg, java.lang.Throwable t)
          Offers msg and the throwable object with log level LogLevel.ERROR.
 void fatal(java.lang.String msg)
          Offers msg with log level LogLevel.FATAL.
 void fatal(java.lang.String msg, java.lang.Throwable t)
          Offers msg and the throwable object with log level LogLevel.FATAL.
 LogLevel getLogLevel()
          Returns the currently set log level of this log service.
 java.lang.String getName()
          Returns the name of this log service.
 void info(java.lang.String msg)
          Offers msg with log level LogLevel.INFO.
 void log(LogLevel level, java.lang.String msg)
          Offers msg with log level.
 void log(LogLevel level, java.lang.String msg, java.lang.Throwable t)
          Offers msg and the throwable object with log level.
 void removeAllWriter(boolean close)
          Removes all registered log writer from this log service.
 void removeWriter(LogWriter writer)
          Removes writer from this log service.
 void setLogLevel(LogLevel level)
          Sets a new log level for this log service.
 java.lang.String toString()
           
 void trace(java.lang.String msg)
          Offers msg with log level LogLevel.TRACE.
 void warn(java.lang.String msg)
          Offers msg with log level LogLevel.WARN.
 void warn(java.lang.String msg, java.lang.Throwable t)
          Offers msg and the throwable object with log level LogLevel.WARN.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

name

protected final java.lang.String name
Name of this log service.

Constructor Detail

LogService

protected LogService(java.lang.String name)
Creates a new log service with the specified name.

Parameters:
name - name of log service

LogService

protected LogService(java.lang.String name,
                     LogLevel level)
Creates a new log service with the specified name and log level.

Parameters:
name - name of log service
level - log level for this log service
Method Detail

addWriter

public void addWriter(LogWriter writer)
Adds the writer to this log service.

No check is made to detect (or prevent) duplicate writers.

Parameters:
writer - LogWriter to add

error

public void error(java.lang.String msg)
Offers msg with log level LogLevel.ERROR.

Parameters:
msg - log information

error

public void error(java.lang.String msg,
                  java.lang.Throwable t)
Offers msg and the throwable object with log level LogLevel.ERROR.

Parameters:
msg - log information
t - throwable object

fatal

public void fatal(java.lang.String msg)
Offers msg with log level LogLevel.FATAL.

Parameters:
msg - log information

fatal

public void fatal(java.lang.String msg,
                  java.lang.Throwable t)
Offers msg and the throwable object with log level LogLevel.FATAL.

Parameters:
msg - log information
t - throwable object

getLogLevel

public LogLevel getLogLevel()
Returns the currently set log level of this log service.

Returns:
the log LogLevel

getName

public java.lang.String getName()
Returns the name of this log service.

Returns:
the log service name

info

public void info(java.lang.String msg)
Offers msg with log level LogLevel.INFO.

Parameters:
msg - log information

log

public void log(LogLevel level,
                java.lang.String msg)
Offers msg with log level.

Parameters:
level - log level for this message
msg - log information

log

public void log(LogLevel level,
                java.lang.String msg,
                java.lang.Throwable t)
Offers msg and the throwable object with log level.

Parameters:
level - log level for this message and throwable
msg - log information
t - throwable object

removeAllWriter

public void removeAllWriter(boolean close)
Removes all registered log writer from this log service.

Parameters:
close - should the writers be closed before removal

removeWriter

public void removeWriter(LogWriter writer)
Removes writer from this log service.

No check is made to detect and remove duplicate writers.

Parameters:
writer - LogWriter to remove

setLogLevel

public void setLogLevel(LogLevel level)
Sets a new log level for this log service.

All log information will be checked against and restricted to at most this level.
Log information not allowed will be ignored.

For example: set log level to LogLevel.WARN to allow log info with LogLevel.FATAL, LogLevel.ERROR and LogLevel.WARN.

Parameters:
level - new log level

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

trace

public void trace(java.lang.String msg)
Offers msg with log level LogLevel.TRACE.

Parameters:
msg - log information

warn

public void warn(java.lang.String msg)
Offers msg with log level LogLevel.WARN.

Parameters:
msg - log information

warn

public void warn(java.lang.String msg,
                 java.lang.Throwable t)
Offers msg and the throwable object with log level LogLevel.WARN.

Parameters:
msg - log information
t - throwable object