File path: /jakarta-jmeter-2.3.2/src/org/apache/jmeter/protocol/http/sampler/AjpSampler.java | File path: /jakarta-jmeter-2.3.2/src/org/apache/jmeter/protocol/jms/client/ConnectionFactory.java | |||
Method name: void threadFinished()
|
Method name: QueueConnection getQueueConnection(Context, String)
|
|||
Number of AST nodes: 3 | Number of AST nodes: 3 | |||
1 | if(channel != null) {↵ | 1 | if (factory != null) {↵ | |
2 | try {↵ | |||
3 | channel.close();↵ | |||
4 | ↵ | 2 | try {↵ | |
3 | return qfactory.createQueueConnection();↵ | |||
5 | } catch(IOException iex) {↵ | 4 | } catch (JMSException e) {↵ | |
6 | log.debug("Error closing channel",iex);↵ | |||
7 | }↵ | |||
8 | ↵ | 5 | log.error(e.getMessage());↵ | |
6 | }↵ | |||
9 | } | 7 | } | |
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.3 |
Clones location | Clones are in different classes |
Number of node comparisons | 5 |
Number of mapped statements | 2 |
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) | 1.0 |
Clone type | Type 2 |
ID | Statement | ID | Statement | |||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | if (channel != null) |
| 1 | if (factory != null) | ||||||||||||||||||||||||||
2 | try |
| 2 | try | ||||||||||||||||||||||||||
|
| 3 | return qfactory.createQueueConnection(); | |||||||||||||||||||||||||||
3 | channel.close(); |
| |
Row | Violation |
---|---|
1 | Type java.net.Socket of variable channel does not match with type javax.jms.TopicConnectionFactory of variable factory |
2 | Expression log.debug("Error closing channel",iex) is a void method call, and thus it cannot be parameterized |
3 | Expression log.error(e.getMessage()) is a void method call, and thus it cannot be parameterized |
4 | Expression log.debug("Error closing channel",iex) is a void method call, and thus it cannot be parameterized |
5 | Expression log.error(e.getMessage()) is a void method call, and thus it cannot be parameterized |
6 | Unmatched statement return qfactory.createQueueConnection(); cannot be moved before or after the extracted code, because it throws exception(s) that should be caught by a try block that will be extracted |
7 | Unmatched return qfactory.createQueueConnection(); |
8 | Unmatched statement channel.close(); cannot be moved before or after the extracted code, because it throws exception(s) that should be caught by a try block that will be extracted |