Package org.apache.jasper.compiler

## Class AntCompiler.SystemLogHandler

- java.lang.Object
- - java.io.OutputStream
  - - java.io.FilterOutputStream
    - - java.io.PrintStream
      - - org.apache.jasper.compiler.AntCompiler.SystemLogHandler

All Implemented Interfaces:
  `Closeable`, `Flushable`, `Appendable`, `AutoCloseable`

Enclosing class:
  AntCompiler

    protected static class AntCompiler.SystemLogHandler
    extends PrintStream

### Field Summary

Fields
`protected static ThreadLocal<ByteArrayOutputStream>` `data` Thread <-> ByteArrayOutputStream associations.
`protected static ThreadLocal<PrintStream>` `streams` Thread <-> PrintStream associations.
`protected PrintStream` `wrapped` Wrapped PrintStream.

### Fields inherited from class java.io.FilterOutputStream

`out`

### Constructor Summary

Constructors
`SystemLogHandler​(PrintStream wrapped)` Construct the handler to capture the output of the given steam.

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods
`boolean` `checkError()`
`void` `close()`
`protected PrintStream` `findStream()` Find PrintStream to which the output must be written to.
`void` `flush()`
`void` `print​(boolean b)`
`void` `print​(char c)`
`void` `print​(char[] s)`
`void` `print​(double d)`
`void` `print​(float f)`
`void` `print​(int i)`
`void` `print​(long l)`
`void` `print​(Object obj)`
`void` `print​(String s)`
`void` `println()`
`void` `println​(boolean x)`
`void` `println​(char x)`
`void` `println​(char[] x)`
`void` `println​(double x)`
`void` `println​(float x)`
`void` `println​(int x)`
`void` `println​(long x)`
`void` `println​(Object x)`
`void` `println​(String x)`
`protected void` `setError()`
`static void` `setThread()` Start capturing thread's output.
`static String` `unsetThread()` Stop capturing thread's output and return captured data as a String.
`void` `write​(byte[] b)`
`void` `write​(byte[] buf, int off, int len)`
`void` `write​(int b)`

### Methods inherited from class java.io.PrintStream

`append, append, append, clearError, format, format, printf, printf`

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

`nullOutputStream`

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

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

### Field Detail

#### wrapped

    protected final PrintStream wrapped

Wrapped PrintStream.

#### streams

    protected static final ThreadLocal<PrintStream> streams

Thread <-> PrintStream associations.

#### data

    protected static final ThreadLocal<ByteArrayOutputStream> data

Thread <-> ByteArrayOutputStream associations.

### Constructor Detail

#### SystemLogHandler

    public SystemLogHandler​(PrintStream wrapped)

Construct the handler to capture the output of the given steam.

Parameters:
  `wrapped` - The wrapped stream

### Method Detail

#### setThread

    public static void setThread()

Start capturing thread's output.

#### unsetThread

    public static String unsetThread()

Stop capturing thread's output and return captured data as a String.

Returns:
  the captured output

#### findStream

    protected PrintStream findStream()

Find PrintStream to which the output must be written to.

Returns:
  the current stream

#### flush

    public void flush()

Specified by:
  `flush` in interface `Flushable`
Overrides:
  `flush` in class `PrintStream`

#### close

    public void close()

Specified by:
  `close` in interface `AutoCloseable`
Specified by:
  `close` in interface `Closeable`
Overrides:
  `close` in class `PrintStream`

#### checkError

    public boolean checkError()

Overrides:
  `checkError` in class `PrintStream`

#### setError

    protected void setError()

Overrides:
  `setError` in class `PrintStream`

#### write

    public void write​(int b)

Overrides:
  `write` in class `PrintStream`

#### write

    public void write​(byte[] b)
               throws IOException

Overrides:
  `write` in class `FilterOutputStream`
Throws:
  `IOException`

#### write

    public void write​(byte[] buf,
                      int off,
                      int len)

Overrides:
  `write` in class `PrintStream`

#### print

    public void print​(boolean b)

Overrides:
  `print` in class `PrintStream`

#### print

    public void print​(char c)

Overrides:
  `print` in class `PrintStream`

#### print

    public void print​(int i)

Overrides:
  `print` in class `PrintStream`

#### print

    public void print​(long l)

Overrides:
  `print` in class `PrintStream`

#### print

    public void print​(float f)

Overrides:
  `print` in class `PrintStream`

#### print

    public void print​(double d)

Overrides:
  `print` in class `PrintStream`

#### print

    public void print​(char[] s)

Overrides:
  `print` in class `PrintStream`

#### print

    public void print​(String s)

Overrides:
  `print` in class `PrintStream`

#### print

    public void print​(Object obj)

Overrides:
  `print` in class `PrintStream`

#### println

    public void println()

Overrides:
  `println` in class `PrintStream`

#### println

    public void println​(boolean x)

Overrides:
  `println` in class `PrintStream`

#### println

    public void println​(char x)

Overrides:
  `println` in class `PrintStream`

#### println

    public void println​(int x)

Overrides:
  `println` in class `PrintStream`

#### println

    public void println​(long x)

Overrides:
  `println` in class `PrintStream`

#### println

    public void println​(float x)

Overrides:
  `println` in class `PrintStream`

#### println

    public void println​(double x)

Overrides:
  `println` in class `PrintStream`

#### println

    public void println​(char[] x)

Overrides:
  `println` in class `PrintStream`

#### println

    public void println​(String x)

Overrides:
  `println` in class `PrintStream`

#### println

    public void println​(Object x)

Overrides:
  `println` in class `PrintStream`