File path: /columba-1.4-src/mail/src/main/java/org/columba/mail/gui/table/action/NextMessageAction.java | File path: /columba-1.4-src/mail/src/main/java/org/columba/mail/gui/table/action/PreviousMessageAction.java | |||
Method name: void actionPerformed(ActionEvent)
|
Method name: void actionPerformed(ActionEvent)
|
|||
Number of AST nodes: 17 | Number of AST nodes: 17 | |||
1 | IMailFolderCommandReference r = ((MailFrameMediator) getFrameMediator())↵ | 1 | IMailFolderCommandReference r = ((MailFrameMediator) getFrameMediator())↵ | |
2 | .getTableSelection();↵ | 2 | .getTableSelection();↵ | |
3 | ITableController table = ((TableViewOwner) getFrameMediator())↵ | 3 | ITableController table = ((TableViewOwner) getFrameMediator())↵ | |
4 | .getTableController();↵ | 4 | .getTableController();↵ | |
5 | if ( table == null ) return;↵ | 5 | if ( table == null ) return;↵ | |
6 | ↵ | 6 | ↵ | |
7 | if (r == null)↵ | 7 | if (r == null)↵ | |
8 | return;↵ | 8 | return;↵ | |
9 | IMessageNode[] nodes = table.getSelectedNodes();↵ | 9 | IMessageNode[] nodes = table.getSelectedNodes();↵ | |
10 | if (nodes.length == 0)↵ | 10 | if (nodes.length == 0)↵ | |
11 | return;↵ | 11 | return;↵ | |
12 | MessageNode node = (MessageNode) nodes[0];↵ | 12 | MessageNode node = (MessageNode) nodes[0];↵ | |
13 | MessageNode nextNode = (MessageNode) node.getNextNode();↵ | 13 | MessageNode previousNode = (MessageNode) node.getPreviousNode();↵ | |
14 | if (nextNode == null)↵ | 14 | if (previousNode == null)↵ | |
15 | return;↵ | 15 | return;↵ | |
16 | // necessary for the message-frame only↵ | 16 | // necessary for the message-frame only↵ | |
17 | r.setUids(new Object[] { nextNode.getUid() });↵ | 17 | r.setUids(new Object[] { previousNode.getUid() });↵ | |
18 | ((MailFrameMediator) getFrameMediator()).setTableSelection(r);↵ | 18 | ((MailFrameMediator) getFrameMediator()).setTableSelection(r);↵ | |
19 | CommandProcessor.getInstance().addOp(new ViewMessageCommand(↵ | 19 | CommandProcessor.getInstance().addOp(new ViewMessageCommand(↵ | |
20 | getFrameMediator(), r));↵ | 20 | getFrameMediator(), r));↵ | |
21 | ↵ | |||
22 | // select message in message list↵ | 21 | // select message in message list↵ | |
23 | table.setSelected(new Object[] { nextNode.getUid() }); | 22 | table.setSelected(new Object[] { previousNode.getUid() }); | |
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.9 |
Clones location | Clones are in different classes having the same super class |
Number of node comparisons | 127 |
Number of mapped statements | 17 |
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) | 3.9 |
Clone type | Type 2 |
ID | Statement | ID | Statement | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | IMailFolderCommandReference r = ((MailFrameMediator)getFrameMediator()).getTableSelection(); | 1 | IMailFolderCommandReference r = ((MailFrameMediator)getFrameMediator()).getTableSelection(); | ||||||||||||||||
2 | ITableController table = ((TableViewOwner)getFrameMediator()).getTableController(); | 2 | ITableController table = ((TableViewOwner)getFrameMediator()).getTableController(); | ||||||||||||||||
3 | if (table == null) | 3 | if (table == null) | ||||||||||||||||
4 | return; | 4 | return; | ||||||||||||||||
5 | if (r == null) | 5 | if (r == null) | ||||||||||||||||
6 | return; | 6 | return; | ||||||||||||||||
7 | IMessageNode[] nodes = table.getSelectedNodes(); | 7 | IMessageNode[] nodes = table.getSelectedNodes(); | ||||||||||||||||
8 | if (nodes.length == 0) | 8 | if (nodes.length == 0) | ||||||||||||||||
9 | return; | 9 | return; | ||||||||||||||||
10 | MessageNode node = (MessageNode)nodes[0]; | 10 | MessageNode node = (MessageNode)nodes[0]; | ||||||||||||||||
11 | MessageNode nextNode = (MessageNode)node.getNextNode(); |
| 11 | MessageNode previousNode = (MessageNode)node.getPreviousNode(); | |||||||||||||||
12 | if (nextNode == null) |
| 12 | if (previousNode == null) | |||||||||||||||
13 | return; | 13 | return; | ||||||||||||||||
14 | r.setUids(new Object[] {nextNode.getUid()}); |
| 14 | r.setUids(new Object[] {previousNode.getUid()}); | |||||||||||||||
15 | ((MailFrameMediator)getFrameMediator()).setTableSelection(r); | 15 | ((MailFrameMediator)getFrameMediator()).setTableSelection(r); | ||||||||||||||||
16 | CommandProcessor.getInstance().addOp(new ViewMessageCommand(getFrameMediator(), r)); | 16 | CommandProcessor.getInstance().addOp(new ViewMessageCommand(getFrameMediator(), r)); | ||||||||||||||||
17 | table.setSelected(new Object[] {nextNode.getUid()}); |
| 17 | table.setSelected(new Object[] {previousNode.getUid()}); |
Row | Violation |
---|---|
1 | Expression node.getNextNode() cannot be parameterized, because it has dependencies to/from statements that will be extracted |
2 | Expression node.getPreviousNode() cannot be parameterized, because it has dependencies to/from statements that will be extracted |