1 package org.apache.maven.surefire.junitcore;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import java.io.ByteArrayOutputStream;
23 import java.io.IOException;
24 import java.io.PrintStream;
25
26 class ConcurrentPrintStream
27 extends PrintStream
28 {
29 private final boolean isStdout;
30
31 ConcurrentPrintStream( boolean stdout )
32 {
33 super( new ByteArrayOutputStream() );
34 isStdout = stdout;
35 }
36
37 public void write( byte[] buf, int off, int len )
38 {
39
40 final TestMethod threadTestMethod = TestMethod.getThreadTestMethod();
41 if ( threadTestMethod != null )
42 {
43 threadTestMethod.getLogicalStream().write( isStdout, buf, off, len );
44 }
45 else
46 {
47 ( (ByteArrayOutputStream) out ).write( buf, off, len );
48 }
49 }
50
51 public void writeTo( PrintStream printStream )
52 throws IOException
53 {
54 ( (ByteArrayOutputStream) out ).writeTo( printStream );
55 }
56
57 public void close()
58 {
59 }
60
61 public void flush()
62 {
63 }
64 }