org.apache.log.output
Class AbstractOutputTarget

java.lang.Object
  extended by org.apache.log.output.AbstractTarget
      extended by org.apache.log.output.AbstractOutputTarget
All Implemented Interfaces:
ErrorAware, LogTarget, Closeable
Direct Known Subclasses:
DatagramOutputTarget, NullOutputLogTarget, ServletOutputLogTarget, SMTPOutputLogTarget, SocketOutputTarget, StreamTarget, WriterTarget

public abstract class AbstractOutputTarget
extends AbstractTarget

Abstract output target. Any new output target that is writing to a single connected resource should extend this class directly or indirectly.

Author:
Avalon Development Team, Peter Donald

Field Summary
private  Formatter m_formatter
          Formatter for target.
 
Constructor Summary
AbstractOutputTarget()
          Parameterless constructor.
AbstractOutputTarget(Formatter formatter)
          Creation of a new abstract output target instance.
 
Method Summary
 void close()
          Shutdown target.
protected  void doProcessEvent(LogEvent event)
          Process a log event.
private  String format(LogEvent event)
          Helper method to format an event into a string, using the formatter if available.
protected  Formatter getFormatter()
          Returns the Formatter.
private  String getHead()
          Helper method to retrieve head for log session.
private  String getTail()
          Helper method to retrieve tail for log session.
protected  void open()
          Startup log session.
protected  void write(String data)
          Abstract method to write data.
private  void writeHead()
          Helper method to write out log head.
private  void writeTail()
          Helper method to write out log tail.
 
Methods inherited from class org.apache.log.output.AbstractTarget
getErrorHandler, isOpen, processEvent, setErrorHandler
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

m_formatter

private Formatter m_formatter
Formatter for target.

Constructor Detail

AbstractOutputTarget

public AbstractOutputTarget()
Parameterless constructor.


AbstractOutputTarget

public AbstractOutputTarget(Formatter formatter)
Creation of a new abstract output target instance.

Parameters:
formatter - the formatter to apply
Method Detail

getFormatter

protected Formatter getFormatter()
Returns the Formatter.


write

protected void write(String data)
Abstract method to write data.

Parameters:
data - the data to be output

doProcessEvent

protected void doProcessEvent(LogEvent event)
Process a log event.

Specified by:
doProcessEvent in class AbstractTarget
Parameters:
event - the event to process

open

protected void open()
Startup log session.

Overrides:
open in class AbstractTarget

close

public void close()
Shutdown target. Attempting to write to target after close() will cause errors to be logged.

Specified by:
close in interface Closeable
Overrides:
close in class AbstractTarget

format

private String format(LogEvent event)
Helper method to format an event into a string, using the formatter if available.

Parameters:
event - the LogEvent
Returns:
the formatted string

writeHead

private void writeHead()
Helper method to write out log head. The head initiates a session of logging.


writeTail

private void writeTail()
Helper method to write out log tail. The tail completes a session of logging.


getHead

private String getHead()
Helper method to retrieve head for log session. TODO: Extract from formatter

Returns:
the head string

getTail

private String getTail()
Helper method to retrieve tail for log session. TODO: Extract from formatter

Returns:
the head string


Copyright © 2003-2004 The Apache Software Foundation. All Rights Reserved.