File path: /columba-1.4-src/mail/src/main/java/org/columba/mail/folder/virtual/VirtualFolder.java | File path: /columba-1.4-src/mail/src/main/java/org/columba/mail/folder/virtual/VirtualFolder.java | |||
Method name: Object[] searchMessages(Filter, Object[])
|
Method name: Object[] searchMessages(Filter, Object[])
|
|||
Number of AST nodes: 11 | Number of AST nodes: 11 | |||
1 | if (h.getSrcFolder() != sourceFolder || i == uids.length - 1) {↵ | 1 | if (virtualHeader.size() > 0) {↵ | |
2 | // Now we can search this folder since no mail from↵ | 2 | // Now we can search this folder since no mail from↵ | |
3 | // this folder will come in the list↵ | 3 | // this folder will come in the list↵ | |
4 | Object[] srcUids = new Object[virtualHeader.size()];↵ | 4 | Object[] srcUids = new Object[virtualHeader.size()];↵ | |
5 | // Create a src uid array↵ | 5 | // Create a src uid array↵ | |
6 | for (int j = 0; j < virtualHeader.size(); j++) {↵ | 6 | for (int j = 0; j < virtualHeader.size(); j++) {↵ | |
7 | srcUids[j] = ((VirtualHeader) virtualHeader.get(j))↵ | 7 | srcUids[j] = ((VirtualHeader) virtualHeader.get(j))↵ | |
8 | .getSrcUid();↵ | 8 | .getSrcUid();↵ | |
9 | }↵ | 9 | }↵ | |
10 | // search the src folder with the src uid array↵ | 10 | // search the src folder with the src uid array↵ | |
11 | Object[] resultUids = sourceFolder.searchMessages(filter,↵ | 11 | Object[] resultUids = sourceFolder.searchMessages(filter,↵ | |
12 | srcUids);↵ | 12 | srcUids);↵ | |
13 | // Convert the src uids back to virtual uids↵ | 13 | // Convert the src uids back to virtual uids↵ | |
14 | if ((resultUids != null) && (resultUids.length > 0)) {↵ | 14 | if ((resultUids != null) && (resultUids.length > 0)) {↵ | |
15 | Object[] virtualUids = new Object[resultUids.length];↵ | 15 | Object[] virtualUids = new Object[resultUids.length];↵ | |
16 | for (int j = 0; j < resultUids.length; j++) {↵ | 16 | for (int j = 0; j < resultUids.length; j++) {↵ | |
17 | virtualUids[j] = srcUidToVirtualUid(sourceFolder,↵ | 17 | virtualUids[j] = srcUidToVirtualUid(sourceFolder,↵ | |
18 | resultUids[j]);↵ | 18 | resultUids[j]);↵ | |
19 | }↵ | 19 | }↵ | |
20 | // Add all found virtual uids to the result↵ | 20 | // Add all found virtual uids to the result↵ | |
21 | resultList.addAll(Arrays.asList(virtualUids));↵ | 21 | resultList.addAll(Arrays.asList(virtualUids));↵ | |
22 | }↵ | 22 | }↵ | |
23 | virtualHeader.clear();↵ | 23 | virtualHeader.clear();↵ | |
24 | } | 24 | } | |
See real code fragment | See real code fragment |
Number of common nesting structure subtrees | 1 |
Number of refactorable cases | 1 |
Number of non-refactorable cases | 0 |
Time elapsed for finding largest common nesting structure subtrees (ms) | 1.0 |
Clones location | Clones are in the same method |
Number of node comparisons | 39 |
Number of mapped statements | 10 |
Number of unmapped statements in the first code fragment | 1 |
Number of unmapped statements in the second code fragment | 1 |
Time elapsed for statement mapping (ms) | 22.6 |
Clone type | Type 2 |
ID | Statement | ID | Statement | |||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
15 | if (h.getSrcFolder() != sourceFolder || i == uids.length - 1) |
| 28 | if (virtualHeader.size() > 0) | ||||||||||||||||
16 | Object[] srcUids = new Object[virtualHeader.size()]; | 29 | Object[] srcUids = new Object[virtualHeader.size()]; | |||||||||||||||||
17 | for (int j = 0; j < virtualHeader.size(); j++) | 30 | for (int j = 0; j < virtualHeader.size(); j++) | |||||||||||||||||
18 | srcUids[j] = ((VirtualHeader)virtualHeader.get(j)).getSrcUid(); | 31 | srcUids[j] = ((VirtualHeader)virtualHeader.get(j)).getSrcUid(); | |||||||||||||||||
19 | Object[] resultUids = sourceFolder.searchMessages(filter, srcUids); | 32 | Object[] resultUids = sourceFolder.searchMessages(filter, srcUids); | |||||||||||||||||
20 | if ((resultUids != null) && (resultUids.length > 0)) | 33 | if ((resultUids != null) && (resultUids.length > 0)) | |||||||||||||||||
21 | Object[] virtualUids = new Object[resultUids.length]; | 34 | Object[] virtualUids = new Object[resultUids.length]; | |||||||||||||||||
22 | for (int j = 0; j < resultUids.length; j++) | 35 | for (int j = 0; j < resultUids.length; j++) | |||||||||||||||||
23 | virtualUids[j] = srcUidToVirtualUid(sourceFolder, resultUids[j]); | 36 | virtualUids[j] = srcUidToVirtualUid(sourceFolder, resultUids[j]); | |||||||||||||||||
24 | resultList.addAll(Arrays.asList(virtualUids)); | 37 | resultList.addAll(Arrays.asList(virtualUids)); | |||||||||||||||||
25 | virtualHeader.clear(); |
| | |||||||||||||||||
|
| 38 | virtualHeader.clear(); |
Row | Violation |
---|---|
1 | Unmatched statement virtualHeader.clear(); cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted |
2 | Unmatched statement virtualHeader.clear(); cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted |