Package org.apache.jasper.util
Class SystemLogHandler
- java.lang.Object
-
- java.io.OutputStream
-
- java.io.FilterOutputStream
-
- java.io.PrintStream
-
- org.apache.jasper.util.SystemLogHandler
-
- All Implemented Interfaces:
Closeable
,Flushable
,Appendable
,AutoCloseable
public class SystemLogHandler extends PrintStream
This helper class may be used to do sophisticated redirection of System.out and System.err.- Author:
- Remy Maucherat
-
-
Field Summary
Fields Modifier and Type Field Description protected static ThreadLocal
data
Thread <-> ByteArrayOutputStream associations.protected static ThreadLocal
streams
Thread <-> PrintStream associations.protected PrintStream
wrapped
Wrapped PrintStream.-
Fields inherited from class java.io.FilterOutputStream
out
-
-
Constructor Summary
Constructors Constructor Description SystemLogHandler(PrintStream wrapped)
Construct the handler to capture the output of the given steam.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
checkError()
void
close()
protected PrintStream
findStream()
Find PrintStream to which the output must be written to.void
flush()
PrintStream
getWrapped()
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
-
-
-
-
Field Detail
-
wrapped
protected PrintStream wrapped
Wrapped PrintStream.
-
streams
protected static final ThreadLocal streams
Thread <-> PrintStream associations.
-
data
protected static final ThreadLocal data
Thread <-> ByteArrayOutputStream associations.
-
-
Constructor Detail
-
SystemLogHandler
public SystemLogHandler(PrintStream wrapped)
Construct the handler to capture the output of the given steam.
-
-
Method Detail
-
getWrapped
public PrintStream getWrapped()
-
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.
-
findStream
protected PrintStream findStream()
Find PrintStream to which the output must be written to.
-
flush
public void flush()
- Specified by:
flush
in interfaceFlushable
- Overrides:
flush
in classPrintStream
-
close
public void close()
- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Overrides:
close
in classPrintStream
-
checkError
public boolean checkError()
- Overrides:
checkError
in classPrintStream
-
setError
protected void setError()
- Overrides:
setError
in classPrintStream
-
write
public void write(int b)
- Overrides:
write
in classPrintStream
-
write
public void write(byte[] b) throws IOException
- Overrides:
write
in classFilterOutputStream
- Throws:
IOException
-
write
public void write(byte[] buf, int off, int len)
- Overrides:
write
in classPrintStream
-
print
public void print(boolean b)
- Overrides:
print
in classPrintStream
-
print
public void print(char c)
- Overrides:
print
in classPrintStream
-
print
public void print(int i)
- Overrides:
print
in classPrintStream
-
print
public void print(long l)
- Overrides:
print
in classPrintStream
-
print
public void print(float f)
- Overrides:
print
in classPrintStream
-
print
public void print(double d)
- Overrides:
print
in classPrintStream
-
print
public void print(char[] s)
- Overrides:
print
in classPrintStream
-
print
public void print(String s)
- Overrides:
print
in classPrintStream
-
print
public void print(Object obj)
- Overrides:
print
in classPrintStream
-
println
public void println()
- Overrides:
println
in classPrintStream
-
println
public void println(boolean x)
- Overrides:
println
in classPrintStream
-
println
public void println(char x)
- Overrides:
println
in classPrintStream
-
println
public void println(int x)
- Overrides:
println
in classPrintStream
-
println
public void println(long x)
- Overrides:
println
in classPrintStream
-
println
public void println(float x)
- Overrides:
println
in classPrintStream
-
println
public void println(double x)
- Overrides:
println
in classPrintStream
-
println
public void println(char[] x)
- Overrides:
println
in classPrintStream
-
println
public void println(String x)
- Overrides:
println
in classPrintStream
-
println
public void println(Object x)
- Overrides:
println
in classPrintStream
-
-