Class WriterHandler

All Implemented Interfaces:
Closeable, Flushable, AutoCloseable, FlushableCloseable, Protectable
Direct Known Subclasses:
OutputStreamHandler

public class WriterHandler extends ExtHandler
A handler which writes to any Writer.
  • Field Details

    • outputLock

      protected final Object outputLock
  • Constructor Details

    • WriterHandler

      public WriterHandler()
  • Method Details

    • doPublish

      protected void doPublish(ExtLogRecord record)
      Do the actual work of publication; the record will have been filtered already. The default implementation does nothing except to flush if the autoFlush property is set to true; if this behavior is to be preserved in a subclass then this method should be called after the record is physically written.
      Overrides:
      doPublish in class ExtHandler
      Parameters:
      record - the log record to publish
    • preWrite

      protected void preWrite(ExtLogRecord record)
      Execute any pre-write policy, such as file rotation. The write lock is held during this method, so make it quick. The default implementation does nothing.
      Parameters:
      record - the record about to be logged
    • setWriter

      public void setWriter(Writer writer)
      Set the writer. The writer will then belong to this handler; when the handler is closed or a new writer is set, this writer will be closed.
      Parameters:
      writer - the new writer, or null to disable logging
    • flush

      public void flush()
      Flush this logger.
      Specified by:
      flush in interface Flushable
      Overrides:
      flush in class ExtHandler
    • close

      public void close() throws SecurityException
      Close this logger.
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface Closeable
      Overrides:
      close in class ExtHandler
      Throws:
      SecurityException - if the caller does not have sufficient permission
    • safeClose

      protected void safeClose(Closeable c)
      Safely close the resource, reporting an error if the close fails.
      Parameters:
      c - the resource