Package com.martiansoftware.nailgun
Class ThreadLocalPrintStream
- java.lang.Object
-
- java.io.OutputStream
-
- java.io.FilterOutputStream
-
- java.io.PrintStream
-
- com.martiansoftware.nailgun.ThreadLocalPrintStream
-
- All Implemented Interfaces:
java.io.Closeable,java.io.Flushable,java.lang.Appendable,java.lang.AutoCloseable
class ThreadLocalPrintStream extends java.io.PrintStreamThe class name is pretty descriptive. This creates a PrintStream much like a FilterOutputStream, but with the wrapped PrintStream being local to the current Thread. By setting System.out to a ThreadLocalPrintStream, different Threads can write to different PrintStreams simply by using System.out. Of course, the init() method must be called by the Thread that wishes to use the wrapped stream.
-
-
Field Summary
Fields Modifier and Type Field Description private java.io.PrintStreamdefaultPrintStreamprivate java.lang.InheritableThreadLocalstreamsThe PrintStreams for the various threads
-
Constructor Summary
Constructors Constructor Description ThreadLocalPrintStream(java.io.PrintStream defaultPrintStream)Creates a new InheritedThreadLocalPrintStream
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleancheckError()voidclose()voidflush()(package private) java.io.PrintStreamgetPrintStream()Returns this thread's PrintStream(package private) voidinit(java.io.PrintStream streamForCurrentThread)Sets the PrintStream for the current threadvoidprint(boolean b)voidprint(char c)voidprint(char[] s)voidprint(double d)voidprint(float f)voidprint(int i)voidprint(long l)voidprint(java.lang.Object obj)voidprint(java.lang.String s)voidprintln()voidprintln(boolean x)voidprintln(char x)voidprintln(char[] x)voidprintln(double x)voidprintln(float x)voidprintln(int x)voidprintln(long x)voidprintln(java.lang.Object x)voidprintln(java.lang.String x)voidwrite(byte[] b)voidwrite(byte[] buf, int off, int len)voidwrite(int b)
-
-
-
Method Detail
-
init
void init(java.io.PrintStream streamForCurrentThread)
Sets the PrintStream for the current thread- Parameters:
streamForCurrentThread- the PrintStream for the current thread
-
getPrintStream
java.io.PrintStream getPrintStream()
Returns this thread's PrintStream- Returns:
- this thread's PrintStream
-
checkError
public boolean checkError()
- Overrides:
checkErrorin classjava.io.PrintStream- See Also:
PrintStream.checkError()
-
close
public void close()
- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfacejava.io.Closeable- Overrides:
closein classjava.io.PrintStream- See Also:
PrintStream.close()
-
flush
public void flush()
- Specified by:
flushin interfacejava.io.Flushable- Overrides:
flushin classjava.io.PrintStream- See Also:
PrintStream.flush()
-
print
public void print(boolean b)
- Overrides:
printin classjava.io.PrintStream- See Also:
PrintStream.print(boolean)
-
print
public void print(char c)
- Overrides:
printin classjava.io.PrintStream- See Also:
PrintStream.print(char)
-
print
public void print(char[] s)
- Overrides:
printin classjava.io.PrintStream- See Also:
PrintStream.print(char[])
-
print
public void print(double d)
- Overrides:
printin classjava.io.PrintStream- See Also:
PrintStream.print(double)
-
print
public void print(float f)
- Overrides:
printin classjava.io.PrintStream- See Also:
PrintStream.print(float)
-
print
public void print(int i)
- Overrides:
printin classjava.io.PrintStream- See Also:
PrintStream.print(int)
-
print
public void print(long l)
- Overrides:
printin classjava.io.PrintStream- See Also:
PrintStream.print(long)
-
print
public void print(java.lang.Object obj)
- Overrides:
printin classjava.io.PrintStream- See Also:
PrintStream.print(Object)
-
print
public void print(java.lang.String s)
- Overrides:
printin classjava.io.PrintStream- See Also:
PrintStream.print(String)
-
println
public void println()
- Overrides:
printlnin classjava.io.PrintStream- See Also:
PrintStream.println()
-
println
public void println(boolean x)
- Overrides:
printlnin classjava.io.PrintStream- See Also:
PrintStream.println(boolean)
-
println
public void println(char x)
- Overrides:
printlnin classjava.io.PrintStream- See Also:
PrintStream.println(char)
-
println
public void println(char[] x)
- Overrides:
printlnin classjava.io.PrintStream- See Also:
PrintStream.println(char[])
-
println
public void println(double x)
- Overrides:
printlnin classjava.io.PrintStream- See Also:
PrintStream.println(double)
-
println
public void println(float x)
- Overrides:
printlnin classjava.io.PrintStream- See Also:
PrintStream.println(float)
-
println
public void println(int x)
- Overrides:
printlnin classjava.io.PrintStream- See Also:
PrintStream.println(int)
-
println
public void println(long x)
- Overrides:
printlnin classjava.io.PrintStream- See Also:
PrintStream.println(long)
-
println
public void println(java.lang.Object x)
- Overrides:
printlnin classjava.io.PrintStream- See Also:
PrintStream.println(Object)
-
println
public void println(java.lang.String x)
- Overrides:
printlnin classjava.io.PrintStream- See Also:
PrintStream.println(String)
-
write
public void write(byte[] buf, int off, int len)- Overrides:
writein classjava.io.PrintStream- See Also:
PrintStream.write(byte[],int,int)
-
write
public void write(int b)
- Overrides:
writein classjava.io.PrintStream- See Also:
PrintStream.write(int)
-
write
public void write(byte[] b) throws java.io.IOException- Overrides:
writein classjava.io.FilterOutputStream- Throws:
java.io.IOException- See Also:
FilterOutputStream.write(byte[])
-
-