org.apache.tools.ant.taskdefs

## Class LogOutputStream

- java.lang.Object
- - java.io.OutputStream
  - - org.apache.tools.ant.util.LineOrientedOutputStream
    - - org.apache.tools.ant.taskdefs.LogOutputStream

- All Implemented Interfaces:
    java.io.Closeable, java.io.Flushable, java.lang.AutoCloseable
  Direct Known Subclasses:
    JUnitTask.JUnitLogOutputStream

      public class LogOutputStream
      extends LineOrientedOutputStream

  Logs each line written to this stream to the log system of ant. Tries to be smart about line separators.
  Since:
    Ant 1.2

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `LogOutputStream(ProjectComponent pc)` Create a new LogOutputStream for the specified ProjectComponent.
    `LogOutputStream(ProjectComponent pc, int level)` Creates a new instance of this class.
    `LogOutputStream(Task task, int level)` Creates a new instance of this class.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `getMessageLevel()` Get the level.
    `protected void` | `processBuffer()` Converts the buffer to a string and sends it to `processLine`
    `protected void` | `processLine(java.lang.String line)` Logs a line to the log system of ant.
    `protected void` | `processLine(java.lang.String line, int level)` Logs a line to the log system of ant.

    - ### Methods inherited from class org.apache.tools.ant.util.LineOrientedOutputStream

      `close, flush, processLine, write, write`

    - ### Methods inherited from class java.io.OutputStream

      `write`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### LogOutputStream

          public LogOutputStream(ProjectComponent pc)

      Create a new LogOutputStream for the specified ProjectComponent.
      Parameters:
        `pc` - the project component for whom to log
      Since:
        Ant 1.7.1

    - #### LogOutputStream

          public LogOutputStream(Task task,
                         int level)

      Creates a new instance of this class.
      Parameters:
        `task` - the task for whom to log
        `level` - loglevel used to log data written to this stream.

    - #### LogOutputStream

          public LogOutputStream(ProjectComponent pc,
                         int level)

      Creates a new instance of this class.
      Parameters:
        `pc` - the project component for whom to log
        `level` - loglevel used to log data written to this stream.
      Since:
        Ant 1.6.3

  - ### Method Detail

    - #### processBuffer

          protected void processBuffer()

      Converts the buffer to a string and sends it to `processLine`
      Overrides:
        `processBuffer` in class `LineOrientedOutputStream`

    - #### processLine

          protected void processLine(java.lang.String line)

      Logs a line to the log system of ant.
      Specified by:
        `processLine` in class `LineOrientedOutputStream`
      Parameters:
        `line` - the line to log.

    - #### processLine

          protected void processLine(java.lang.String line,
                         int level)

      Logs a line to the log system of ant.
      Parameters:
        `line` - the line to log.
        `level` - the logging level to use.

    - #### getMessageLevel

          public int getMessageLevel()

      Get the level.
      Returns:
        the log level.