package log;

import java.io.*;

/**
  * Any object that provides access to some log file through a {@link #log} method.
  *
  * @author Steffen Zschaler
  * @version 2.0 14/07/1999
  * @since v2.0
  */
public interface LogContext {

  /**
    * Logs the given data to a log file.
    *
    * @param l the event to be logged.
    *
    * @exception LogNoOutputStreamException if no OutputStream has been
    * specified for the log file.
    * @exception IOException if an IOException occurs when writing to the
    * log file.
    *
    * @override Always
    */
  public void log (Loggable l)
    throws LogNoOutputStreamException,
           IOException;

}