File path: /hibernate-distribution-3.3.2.GA/project/core/src/main/java/org/hibernate/sql/Template.java | File path: /hibernate-distribution-3.3.2.GA/project/core/src/main/java/org/hibernate/sql/Template.java | |||
Method name: String renderWhereStringTemplate(String, String, Dialect, SQLFunctionRegistry)
|
Method name: String renderOrderByStringTemplate(String, Dialect, SQLFunctionRegistry)
|
|||
Number of AST nodes: 14 | Number of AST nodes: 14 | |||
1 | if ( "`".equals(token) ) {↵ | 1 | if ( "`".equals(token) ) {↵ | |
2 | isOpenQuote = !quotedIdentifier;↵ | 2 | isOpenQuote = !quotedIdentifier;↵ | |
3 | token = lcToken = isOpenQuote ? ↵ | 3 | token = lcToken = isOpenQuote ? ↵ | |
4 | new Character( dialect.openQuote() ).toString() :↵ | 4 | new Character( dialect.openQuote() ).toString() :↵ | |
5 | new Character( dialect.closeQuote() ).toString();↵ | 5 | new Character( dialect.closeQuote() ).toString();↵ | |
6 | quotedIdentifier = isOpenQuote; ↵ | 6 | quotedIdentifier = isOpenQuote; ↵ | |
7 | isQuoteCharacter = true;↵ | 7 | isQuoteCharacter = true;↵ | |
8 | }↵ | 8 | }↵ | |
9 | else if ( !quotedIdentifier && ( dialect.openQuote()==token.charAt(0) ) ) {↵ | 9 | else if ( !quotedIdentifier && ( dialect.openQuote()==token.charAt(0) ) ) {↵ | |
10 | isOpenQuote = true;↵ | 10 | isOpenQuote = true;↵ | |
11 | quotedIdentifier = true; ↵ | 11 | quotedIdentifier = true; ↵ | |
12 | isQuoteCharacter = true;↵ | 12 | isQuoteCharacter = true;↵ | |
13 | }↵ | 13 | }↵ | |
14 | else if ( quotedIdentifier && ( dialect.closeQuote()==token.charAt(0) ) ) {↵ | 14 | else if ( quotedIdentifier && ( dialect.closeQuote()==token.charAt(0) ) ) {↵ | |
15 | quotedIdentifier = false;↵ | 15 | quotedIdentifier = false;↵ | |
16 | isQuoteCharacter = true;↵ | 16 | isQuoteCharacter = true;↵ | |
17 | isOpenQuote = false;↵ | 17 | isOpenQuote = false;↵ | |
18 | }↵ | 18 | }↵ | |
19 | else {↵ | 19 | else {↵ | |
20 | isOpenQuote = false;↵ | 20 | isOpenQuote = false;↵ | |
21 | } | 21 |
| |
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) | 1.1 |
Clones location | Clones are declared in the same class |
Number of node comparisons | 136 |
Number of mapped statements | 14 |
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) | 5.8 |
Clone type | Type 1 |
ID | Statement | ID | Statement | |
---|---|---|---|---|
22 | if ("`".equals(token)) | 19 | if ("`".equals(token)) | |
23 | isOpenQuote = !quotedIdentifier; | 20 | isOpenQuote = !quotedIdentifier; | |
24 | token = lcToken = isOpenQuote ? new Character(dialect.openQuote()).toString() : new Character(dialect.closeQuote()).toString(); | 21 | token = lcToken = isOpenQuote ? new Character(dialect.openQuote()).toString() : new Character(dialect.closeQuote()).toString(); | |
25 | quotedIdentifier = isOpenQuote; | 22 | quotedIdentifier = isOpenQuote; | |
26 | isQuoteCharacter = true; | 23 | isQuoteCharacter = true; | |
27 | else if (!quotedIdentifier && (dialect.openQuote() == token.charAt(0))) | 24 | else if (!quotedIdentifier && (dialect.openQuote() == token.charAt(0))) | |
28 | isOpenQuote = true; | 25 | isOpenQuote = true; | |
29 | quotedIdentifier = true; | 26 | quotedIdentifier = true; | |
30 | isQuoteCharacter = true; | 27 | isQuoteCharacter = true; | |
31 | else if (quotedIdentifier && (dialect.closeQuote() == token.charAt(0))) | 28 | else if (quotedIdentifier && (dialect.closeQuote() == token.charAt(0))) | |
32 | quotedIdentifier = false; | 29 | quotedIdentifier = false; | |
33 | isQuoteCharacter = true; | 30 | isQuoteCharacter = true; | |
34 | isOpenQuote = false; | 31 | isOpenQuote = false; | |
else | else | |||
35 | isOpenQuote = false; | 32 | isOpenQuote = false; |
Row | Violation |
---|---|
1 | Clone fragment #1 returns variables quotedIdentifier, isOpenQuote, token, isQuoteCharacter, lcToken , while Clone fragment #2 returns variables quotedIdentifier, isOpenQuote, token, isQuoteCharacter, lcToken |