public abstract class AbstractLogPrinter extends java.lang.Object implements LogPrinter
LogPrinter
. On instantiation it registers itself at
the underlying LogChannel
as a LogMessageEvent.Listener
in order to receive log messages.
As long as the LogLevel
is not set (null) the level from the parent LogChannel
is used.
Note that the only method that must be implemented by subclasses is LogPrinter.getOutput(LogLevel)
,
which defines where the output is written to.
LogPrinter
,
LogChannel
,
LogMessageEvent
Constructor and Description |
---|
AbstractLogPrinter(LogChannel logCh) |
Modifier and Type | Method and Description |
---|---|
void |
addLogLevelListener(LogLevelEvent.Listener l) |
void |
close()
Closes this
LogPrinter and deregisters it from the underlying LogChannel . |
LogChannel |
getLogChannel()
Returns the underlying
LogChannel from where the messages are received. |
LogFormatter |
getLogFormatter()
Returns the formatter for formatting the logMessage
|
LogLevel |
getLogLevel()
Returns the current
LogLevel of this LogPrinter . |
LogMessageEvent.Listener |
getLogMessageListener()
Needed for the rare cases where this
LogPrinter needs to
be registered at multiple LogChannel s. |
boolean |
isClosed() |
boolean |
isSilent()
Tells whether this
LogPrinter is in silent mode. |
protected void |
processLogMessage(TextPrintable output,
LogFormatter formatter,
LogMessageEvent e)
Gives subclasses a chance to hook in before printing the logMessage
|
void |
removeLogLevelListener(LogLevelEvent.Listener l) |
void |
setLogFormatter(LogFormatter formatter) |
void |
setLogLevel(LogLevel level)
Sets the
LogLevel individually on this LogPrinter . |
void |
setSilent(boolean state)
Sets this
LogPrinter into silent mode. |
java.lang.String |
toString() |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
getOutput, getTypeString
public AbstractLogPrinter(LogChannel logCh)
public final void setLogFormatter(LogFormatter formatter)
public boolean isClosed()
public final LogMessageEvent.Listener getLogMessageListener()
LogPrinter
needs to
be registered at multiple LogChannel
s.public final LogChannel getLogChannel()
LogPrinter
LogChannel
from where the messages are received.getLogChannel
in interface LogPrinter
public void setLogLevel(LogLevel level)
LogLevel
individually on this LogPrinter
. If the level is null then
the level of the parent LogChannel
is used.setLogLevel
in interface LogPrinter
public final LogLevel getLogLevel()
LogLevel
of this LogPrinter
.
If the printers level is null, then the level of the parent LogChannel
is returned.getLogLevel
in interface LogPrinter
public final LogFormatter getLogFormatter()
LogPrinter
getLogFormatter
in interface LogPrinter
public void setSilent(boolean state)
LogPrinter
LogPrinter
into silent mode. No further output will occur.
Note that this does not affect the current LogLevel
.
After re-enabling reporting will continue in current LogLevel
.setSilent
in interface LogPrinter
public final boolean isSilent()
LogPrinter
LogPrinter
is in silent mode.isSilent
in interface LogPrinter
protected void processLogMessage(TextPrintable output, LogFormatter formatter, LogMessageEvent e)
public void close()
LogPrinter
and deregisters it from the underlying LogChannel
.close
in interface LogPrinter
close
in interface java.io.Closeable
close
in interface java.lang.AutoCloseable
public final void addLogLevelListener(LogLevelEvent.Listener l)
addLogLevelListener
in interface LogLevelEvent.Source
public final void removeLogLevelListener(LogLevelEvent.Listener l)
removeLogLevelListener
in interface LogLevelEvent.Source
public java.lang.String toString()
toString
in class java.lang.Object
Copyright © 2014 EsprIT-Systems. All Rights Reserved.