File path: /columba-1.4-src/mail/src/main/java/org/columba/mail/gui/table/action/DownAction.java | File path: /columba-1.4-src/mail/src/main/java/org/columba/mail/gui/table/action/UpAction.java | |||
Method name: void actionPerformed(ActionEvent)
|
Method name: void actionPerformed(ActionEvent)
|
|||
Number of AST nodes: 12 | Number of AST nodes: 12 | |||
1 | Object[] nextUids = new Object[1];↵ | 1 | Object[] prevUids = new Object[1];↵ | |
2 | nextUids[0] = ((MessageNode) nextNode).getUid();↵ | 2 | prevUids[0] = ((MessageNode) prevNode).getUid();↵ | |
3 | LOG.info("prevUids: " + nextUids);↵ | 3 | LOG.info("prevUids: " + prevUids);↵ | |
4 | // and set this to the actual ref↵ | 4 | ↵ | |
5 | r.setUids(nextUids);↵ | 5 | ref.setUids(prevUids);↵ | |
6 | // check if the node is not null↵ | 6 | // check if the node is not null↵ | |
7 | IMessageNode[] nodes = new MessageNode[nextUids.length];↵ | 7 | IMessageNode[] nodes = new MessageNode[prevUids.length];↵ | |
8 | for (int i = 0; i < nextUids.length; i++) {↵ | 8 | for (int i = 0; i < prevUids.length; i++) {↵ | |
9 | nodes[i] = tableController.getMessageNode(nextUids[i]);↵ | 9 | nodes[i] = tableController.getMessageNode(prevUids[i]);↵ | |
10 | }↵ | 10 | }↵ | |
11 | boolean node_ok = true;↵ | 11 | boolean node_ok = true;↵ | |
12 | for (int i = 0; i < nodes.length; i++) {↵ | 12 | for (int i = 0; i < nodes.length; i++) {↵ | |
13 | if (nodes[i] == null) {↵ | 13 | if (nodes[i] == null) {↵ | |
14 | node_ok = false;↵ | 14 | node_ok = false;↵ | |
15 | break;↵ | 15 | break;↵ | |
16 | }↵ | 16 | }↵ | |
17 | } | 17 |
| |
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) | 0.4 |
Clones location | Clones are in different classes having the same super class |
Number of node comparisons | 51 |
Number of mapped statements | 12 |
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) | 2.5 |
Clone type | Type 2 |
ID | Statement | ID | Statement | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
11 | Object[] nextUids = new Object[1]; |
| 13 | Object[] prevUids = new Object[1]; | |||||||||||||
12 | nextUids[0] = ((MessageNode)nextNode).getUid(); |
| 14 | prevUids[0] = ((MessageNode)prevNode).getUid(); | |||||||||||||
13 | LOG.info("prevUids: " + nextUids); |
| 15 | LOG.info("prevUids: " + prevUids); | |||||||||||||
14 | r.setUids(nextUids); |
| 16 | ref.setUids(prevUids); | |||||||||||||
15 | IMessageNode[] nodes = new MessageNode[nextUids.length]; |
| 17 | IMessageNode[] nodes = new MessageNode[prevUids.length]; | |||||||||||||
16 | for (int i = 0; i < nextUids.length; i++) |
| 18 | for (int i = 0; i < prevUids.length; i++) | |||||||||||||
17 | nodes[i] = tableController.getMessageNode(nextUids[i]); |
| 19 | nodes[i] = tableController.getMessageNode(prevUids[i]); | |||||||||||||
18 | boolean node_ok = true; | 20 | boolean node_ok = true; | ||||||||||||||
19 | for (int i = 0; i < nodes.length; i++) | 21 | for (int i = 0; i < nodes.length; i++) | ||||||||||||||
20 | if (nodes[i] == null) | 22 | if (nodes[i] == null) | ||||||||||||||
21 | node_ok = false; | 23 | node_ok = false; | ||||||||||||||
22 | break; | 24 | break; |
Row | Violation |
---|---|
1 | Clone fragment #1 returns variables node_ok, nextUids , while Clone fragment #2 returns variables node_ok, prevUids |