public class LogPrintStream
extends java.io.PrintStream
PrintStream
interface to a LogPage
.
Note: Because of internationalization issues, it is strongly recommended that LogPrintWriter
be used whenever possible instead of LogPrintStream
to prevent characters from being corrupted when displayed.
Constructor and Description |
---|
LogPrintStream(LogPage logPage)
Note: Because of internationalization issues, it is strongly recommended that
LogPrintWriter be used whenever possible instead of LogPrintStream to prevent characters from being corrupted when displayed. |
Modifier and Type | Method and Description |
---|---|
LogPage |
getLogPage()
Directly returns the underlying
LogPage for this LogPrintStream . |
LogPage |
getWrappedLogPage()
The need for a wrapped
LogPage instance arises from the fact that: A typical LogPage implementation uses a thread to forward messages to the UI components (to avoid deadlocks in the IDE caused by the automatic showing of the log window or changing log pages in the log window), and Each LogPrintStream uses a thread to forward messages to the underlying LogPage . |
append, append, append, checkError, clearError, close, flush, format, format, print, print, print, print, print, print, print, print, print, printf, printf, println, println, println, println, println, println, println, println, println, println, setError, write, write
public LogPrintStream(LogPage logPage)
LogPrintWriter
be used whenever possible instead of LogPrintStream
to prevent characters from being corrupted when displayed.
Constructs a LogPrintStream
that is wired into the specified LogPage
.
If the PrintStream.close()
method is called, the thread that is forwarding messages to the LogPage
will be terminated. This disconnects the LogPrintStream
from the LogPage
.
Note that the close()
method will be called automatically when the LogPrintStream
is garbage collected, so an explicit call to close()
is not required.
If creation of a pipe to the specified LogPage
fails for some reason, the LogPrintStream
will be configured to forward all messages to System.out
instead.
public LogPage getLogPage()
LogPage
for this LogPrintStream
.public LogPage getWrappedLogPage()
LogPage
instance arises from the fact that:
LogPage
implementation uses a thread to forward messages to the UI components (to avoid deadlocks in the IDE caused by the automatic showing of the log window or changing log pages in the log window), andLogPrintStream
uses a thread to forward messages to the underlying LogPage
.LogPage
and a corresponding LogPrintStream
instance can lead to an undesirable reordering of messages. In order to preserve the temporal ordering of messages, all messages must be queued through the same LogPrintStream
instance. The wrapped instance of LogPage
returned by this method is there configured to delegate logging to this LogPrintStream
instance.
The main disadvantage of using getWrappedLogPage()
is that the returned LogPage
cannot be downcast to a specific LogPage
implementation to use special implementation-specific APIs.