File path: /apache-ant-1.7.0/src/org/apache/tools/ant/taskdefs/Redirector.java | File path: /apache-ant-1.7.0/src/org/apache/tools/ant/taskdefs/Redirector.java | |||
Method name: void createStreams()
|
Method name: void createStreams()
|
|||
Number of AST nodes: 16 | Number of AST nodes: 16 | |||
1 | try {↵ | 1 | try {↵ | |
2 | LeadPipeInputStream snk = new LeadPipeInputStream();↵ | 2 | LeadPipeInputStream snk = new LeadPipeInputStream();↵ | |
3 | snk.setManagingComponent(managingTask);↵ | 3 | snk.setManagingComponent(managingTask);↵ | |
4 | InputStream errPumpIn = snk;↵ | 4 | InputStream outPumpIn = snk;↵ | |
5 | Reader reader = new InputStreamReader(errPumpIn, inputEncoding);↵ | 5 | Reader reader = new InputStreamReader(outPumpIn, inputEncoding);↵ | |
6 | if (errorFilterChains != null && errorFilterChains.size() > 0) {↵ | 6 | if (outputFilterChains != null && outputFilterChains.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(errorFilterChains);↵ | 10 | helper.setFilterChains(outputFilterChains);↵ | |
11 | reader = helper.getAssembledReader();↵ | 11 | reader = helper.getAssembledReader();↵ | |
12 | }↵ | 12 | }↵ | |
13 | errPumpIn = new ReaderInputStream(reader, errorEncoding);↵ | 13 | outPumpIn = new ReaderInputStream(reader, outputEncoding);↵ | |
14 | Thread t = new Thread(threadGroup, new StreamPumper(↵ | 14 | Thread t = new Thread(threadGroup, new StreamPumper(↵ | |
15 | errPumpIn, errorStream, true), "error pumper");↵ | 15 | outPumpIn, outputStream, true), "output pumper");↵ | |
16 | t.setPriority(Thread.MAX_PRIORITY);↵ | 16 | t.setPriority(Thread.MAX_PRIORITY);↵ | |
17 | errorStream = new PipedOutputStream(snk);↵ | 17 | outputStream = 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 error stream", eyeOhEx);↵ | 21 | "error setting up output stream", eyeOhEx);↵ | |
22 | } | 22 |
| |
See real code fragment | See real code fragment |
Number of common nesting structure subtrees | 1 |
Number of refactorable cases | 0 |
Number of non-refactorable cases | 1 |
Time elapsed for finding largest common nesting structure subtrees (ms) | 1.0 |
Clones location | Clones are in the same method |
Number of node comparisons | 137 |
Number of mapped statements | 16 |
Number of unmapped statements in the first code fragment | 0 |
Number of unmapped statements in the second code fragment | 0 |
Time elapsed for statement mapping (ms) | 9.5 |
Clone type | Type 2 |
ID | Statement | ID | Statement | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
51 | try |
| 34 | try | ||||||||||||||||
52 | LeadPipeInputStream snk = new LeadPipeInputStream(); | 35 | LeadPipeInputStream snk = new LeadPipeInputStream(); | |||||||||||||||||
53 | snk.setManagingComponent(managingTask); | 36 | snk.setManagingComponent(managingTask); | |||||||||||||||||
54 | InputStream errPumpIn = snk; |
| 37 | InputStream outPumpIn = snk; | ||||||||||||||||
55 | Reader reader = new InputStreamReader(errPumpIn, inputEncoding); |
| 38 | Reader reader = new InputStreamReader(outPumpIn, inputEncoding); | ||||||||||||||||
56 | if (errorFilterChains != null && errorFilterChains.size() > 0) |
| 39 | if (outputFilterChains != null && outputFilterChains.size() > 0) | ||||||||||||||||
57 | ChainReaderHelper helper = new ChainReaderHelper(); | 40 | ChainReaderHelper helper = new ChainReaderHelper(); | |||||||||||||||||
58 | helper.setProject(managingTask.getProject()); | 41 | helper.setProject(managingTask.getProject()); | |||||||||||||||||
59 | helper.setPrimaryReader(reader); | 42 | helper.setPrimaryReader(reader); | |||||||||||||||||
60 | helper.setFilterChains(errorFilterChains); |
| 43 | helper.setFilterChains(outputFilterChains); | ||||||||||||||||
61 | reader = helper.getAssembledReader(); | 44 | reader = helper.getAssembledReader(); | |||||||||||||||||
62 | errPumpIn = new ReaderInputStream(reader, errorEncoding); |
| 45 | outPumpIn = new ReaderInputStream(reader, outputEncoding); | ||||||||||||||||
63 | Thread t = new Thread(threadGroup, new StreamPumper(errPumpIn, errorStream, true), "error pumper"); |
| 46 | Thread t = new Thread(threadGroup, new StreamPumper(outPumpIn, outputStream, true), "output pumper"); | ||||||||||||||||
64 | t.setPriority(Thread.MAX_PRIORITY); | 47 | t.setPriority(Thread.MAX_PRIORITY); | |||||||||||||||||
65 | errorStream = new PipedOutputStream(snk); |
| 48 | outputStream = new PipedOutputStream(snk); | ||||||||||||||||
66 | t.start(); | 49 | t.start(); |
Row | Violation |
---|---|
1 | Expression errorStream is a field being modified, and thus it cannot be parameterized |
2 | Expression outputStream is a field being modified, and thus it cannot be parameterized |