1 | try {↵ | | 1 | try {↵
|
2 | LeadPipeInputStream snk = new LeadPipeInputStream();↵ | | 2 | LeadPipeInputStream snk = new LeadPipeInputStream();↵
|
3 | snk.setManagingComponent(managingTask);↵ | | 3 | snk.setManagingComponent(managingTask);↵
|
|
4 | InputStream outPumpIn = snk;↵ | | 4 | InputStream errPumpIn = snk;↵
|
|
5 | Reader reader = new InputStreamReader(outPumpIn, inputEncoding);↵ | | 5 | Reader reader = new InputStreamReader(errPumpIn, inputEncoding);↵
|
|
6 | if (outputFilterChains != null && outputFilterChains.size() > 0) {↵ | | 6 | if (errorFilterChains != null && errorFilterChains.size() > 0) {↵
|
7 | ChainReaderHelper helper = new ChainReaderHelper();↵ | | 7 | ChainReaderHelper helper = new ChainReaderHelper();↵
|
8 | helper.setProject(managingTask.getProject());↵ | | 8 | helper.setProject(managingTask.getProject());↵
|
9 | helper.setPrimaryReader(reader);↵ | | 9 | helper.setPrimaryReader(reader);↵
|
10 | helper.setFilterChains(outputFilterChains);↵ | | 10 | helper.setFilterChains(errorFilterChains);↵
|
11 | reader = helper.getAssembledReader();↵ | | 11 | reader = helper.getAssembledReader();↵
|
12 | }↵ | | 12 | }↵
|
13 | outPumpIn = new ReaderInputStream(reader, outputEncoding);↵ | | 13 | errPumpIn = new ReaderInputStream(reader, errorEncoding);↵
|
|
14 | Thread t = new Thread(threadGroup, new StreamPumper(↵ | | 14 | Thread t = new Thread(threadGroup, new StreamPumper(↵
|
15 | outPumpIn, outputStream, true), "output pumper");↵ | | 15 | errPumpIn, errorStream, true), "error pumper");↵
|
16 | t.setPriority(Thread.MAX_PRIORITY);↵ | | 16 | t.setPriority(Thread.MAX_PRIORITY);↵
|
17 | outputStream = new PipedOutputStream(snk);↵ | | 17 | errorStream = new PipedOutputStream(snk);↵
|
18 | t.start();↵ | | 18 | t.start();↵
|
19 | } catch (IOException eyeOhEx) {↵ | | 19 | } catch (IOException eyeOhEx) {↵
|
20 | throw new BuildException(↵ | | 20 | throw new BuildException(↵
|
21 | "error setting up output stream", eyeOhEx);↵ | | 21 | "error setting up error stream", eyeOhEx);↵
|
22 | | | 22 |
|