if (closed) {
throw new IOException("The funneled OutputStream has been closed.");
}
if (gotAll) {
getProject().log ("Repeated tag scope element: all",
Project.MSG_VERBOSE);
}
gotAll = true;
Clone fragments detected by clone detection tool
File path: /apache-ant-1.7.0/src/org/apache/tools/ant/util/OutputStreamFunneler.java
|
|
File path: /apache-ant-1.7.0/src/org/apache/tools/ant/taskdefs/Javadoc.java
|
Method name: void dieIfClosed()
|
|
Method name: void setScope(String)
|
Number of AST nodes: 2
|
|
Number of AST nodes: 3
|
|
1 | if (closed) {↵ | | 1 | if (gotAll) {↵
|
2 | throw new IOException("The funneled OutputStream has been closed.");↵ | | 2 | ↵
|
3 | } | | 3 | getProject().log ("Repeated tag scope element: all",↵
|
| | | 4 | Project.MSG_VERBOSE);↵
|
| | | 5 | }↵
|
| | | 6 | gotAll = true;
|
See real code fragment |
|
See real code fragment |
Summary
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) | 0.1 |
Clones location | Clones are in different classes |
Number of node comparisons | 4 |
-
{Non-refactorable}
Mapping Summary
Number of mapped statements | 1 |
Number of unmapped statements in the first code fragment | 1 |
Number of unmapped statements in the second code fragment | 2 |
Time elapsed for statement mapping (ms) | 0.3 |
Clone type | Type 3 |
Mapped Statements
ID |
Statement |
|
ID |
Statement |
1 | if (closed) | | 9 | if (gotAll) |
2 | throw new IOException("The funneled OutputStream has been closed."); | | | |
| | | 10 | getProject().log("Repeated tag scope element: all", Project.MSG_VERBOSE); |
| | | 11 | gotAll = true; |
Precondition Violations (2)
Row |
Violation |
1 | Unmatched throw new IOException("The funneled OutputStream has been closed."); |
2 | Unmatched statement gotAll=true; cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted |