|
Extension SDK | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectjava.io.Writer
java.io.PrintWriter
oracle.ide.log.LogPrintWriter
This class provides a PrintWriter interface to a
LogPage.
| Field Summary |
| Fields inherited from class java.io.PrintWriter |
out |
| Fields inherited from class java.io.Writer |
lock |
| Constructor Summary | |
LogPrintWriter(LogPage logPage)
Constructs a LogPrintWriter that is wired into the
specified LogPage. |
|
| Method Summary | |
LogPage |
getLogPage()
Directly returns the underlying LogPage for this
LogPrintWriter. |
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 LogPrintWriter uses a thread to forward
messages to the underlying LogPage. |
| Methods inherited from class java.io.PrintWriter |
checkError, close, flush, print, print, print, print, print, print, print, print, print, println, println, println, println, println, println, println, println, println, println, setError, write, write, write, write, write |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
public LogPrintWriter(LogPage logPage)
LogPrintWriter that is wired into the
specified LogPage.
If the PrintWriter.close() method is called, the thread that is
forwarding messages to the LogPage will be
terminated. This disconnects the LogPrintWriter
from the LogPage.
Note that the close() method will be called
automatically when the LogPrintWriter 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 LogPrintWriter will
be configured to forward all messages to System.out
instead.
| Method Detail |
public LogPage getLogPage()
LogPage for this
LogPrintWriter.
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),
and
LogPrintWriter uses a thread to forward
messages to the underlying LogPage.
LogPage and a corresponding
LogPrintWriter 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 LogPrintWriter instance. The wrapped
instance of LogPage returned by this method is
there configured to delegate logging to this
LogPrintWriter 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.
|
Extension SDK | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
Copyright ©1997, 2003, Oracle. All rights reserved.