BuildLogger (Apache Ant API)
Date: 2018-07-10

org.apache.tools.ant

## Interface BuildLogger

- All Superinterfaces:
    BuildListener, java.util.EventListener
  All Known Implementing Classes:
    AnsiColorLogger, BigProjectLogger, CommonsLoggingListener, DefaultLogger, MailLogger, NoBannerLogger, ProfileLogger, RecorderEntry, SilentLogger, SimpleBigProjectLogger, TimestampedLogger, XmlLogger

      public interface BuildLogger
      extends BuildListener

  Interface used by Ant to log the build output. A build logger is a build listener which has the 'right' to send output to the ant log, which is usually `System.out` unless redirected by the `-logfile` option.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `setEmacsMode(boolean emacsMode)` Sets this logger to produce emacs (and other editor) friendly output.
    `void` | `setErrorPrintStream(java.io.PrintStream err)` Sets the output stream to which this logger is to send error messages.
    `void` | `setMessageOutputLevel(int level)` Sets the highest level of message this logger should respond to.
    `void` | `setOutputPrintStream(java.io.PrintStream output)` Sets the output stream to which this logger is to send its output.

    - ### Methods inherited from interface org.apache.tools.ant.BuildListener

      `buildFinished, buildStarted, messageLogged, targetFinished, targetStarted, taskFinished, taskStarted`

- - ### Method Detail

    - #### setMessageOutputLevel

          void setMessageOutputLevel(int level)

      Sets the highest level of message this logger should respond to. Only messages with a message level lower than or equal to the given level should be written to the log.

      Constants for the message levels are in the `Project` class. The order of the levels, from least to most verbose, is `MSG_ERR`, `MSG_WARN`, `MSG_INFO`, `MSG_VERBOSE`, `MSG_DEBUG`.

      Parameters:
        `level` - the logging level for the logger.

    - #### setOutputPrintStream

          void setOutputPrintStream(java.io.PrintStream output)

      Sets the output stream to which this logger is to send its output.
      Parameters:
        `output` - The output stream for the logger. Must not be `null`.

    - #### setEmacsMode

          void setEmacsMode(boolean emacsMode)

      Sets this logger to produce emacs (and other editor) friendly output.
      Parameters:
        `emacsMode` - `true` if output is to be unadorned so that emacs and other editors can parse files names, etc.

    - #### setErrorPrintStream

          void setErrorPrintStream(java.io.PrintStream err)

      Sets the output stream to which this logger is to send error messages.
      Parameters:
        `err` - The error stream for the logger. Must not be `null`.