StringBuffer result = new StringBuffer(); appendLine(result, "Usage: { <model.ecore> }+ [ <model.genmodel> [ -reload ] ] <OPTION>"); appendLine(result, "<OPTION> ::= [ <PROJECT-OPTION> ] [ <PATHMAP> ]"); appendLine(result, " { <PACKAGE> }+ { <REF-PACKAGE> }* { <REF-GEN-MODEL> }*"); appendLine(result, " [ <TEMPLATE-PATH> ] [ <MODEL-PLUGIN-ID> ] [ <COPYRIGHT> ]"); appendLine(result, " [ <SDO> ] [ <QUIET> ]"); appendLine(result, "<PROJECT-OPTION> ::= <MODEL-PROJECT> [ <EDIT-PROJECT> ] [ <EDITOR-PROJECT> ]"); appendLine(result, " [ <TESTS-PROJECT> ]"); appendLine(result, "<MODEL-PROJECT> ::= -modelProject <model-directory> <fragment-path>"); appendLine(result, "<EDIT-PROJECT> ::= -editProject <edit-directory> <fragment-path>"); appendLine(result, "<EDITOR-PROJECT> ::= -editorProject <editor-directory> <fragment-path>"); appendLine(result, "<TESTS-PROJECT> ::= -testsProject <tests-directory> <fragment-path>"); appendLine(result, "<PACKAGE> ::= -package <nsURI> [ <base> <prefix> ]"); appendLine(result, "<REF-GEN-MODEL> ::= -refGenModel <model.genmodel> { <nsURI> }+"); appendLine(result, "<TEMPLATE-PATH> ::= -templatePath <template-directory>"); appendLine(result, "<MODEL-PLUGIN-ID> ::= -modelPluginID <plugin-ID>"); appendLine(result, "<COPYRIGHT> ::= -copyright <copyright-string>"); appendLine(result, "<JDK-LEVEL> ::= -jdkLevel <jdk level: 1.4 5.0 6.0>"); appendLine(result, "<VALIDATE-MODEL> ::= -validateModel <true|false>"); appendLine(result, "<SDO> ::= -sdo"); appendLine(result, "<QUIET> ::= -quiet"); appendLine(result, ""); appendLine(result, "For example:"); appendLine(result, ""); appendLine(result, ""); appendLine(result, " ecore2genmodel"); appendLine(result, " ../../etools.company/model.ecore"); appendLine(result, " result/model/Extended.genmodel"); appendLine(result, " -modelProject result src"); appendLine(result, " -editProject result.edit src"); appendLine(result, " -editorProject result.editor src"); appendLine(result, " -refGenModel company.genmodel http://org.sample.company"); return result;
StringBuffer result = new StringBuffer(); appendLine(result, "Usage: <workspace absolute path of model.genmodel> [ -reload ] <OPTION>"); appendLine(result, "<OPTION> ::= [ <PROJECT-OPTION> ] [ <PATHMAP> ]"); appendLine(result, " { <PACKAGE> }+ { <REF-PACKAGE> }* { <REF-GEN-MODEL> }*"); appendLine(result, " [ <TEMPLATE-PATH> ] [ <MODEL-PLUGIN-ID> ] [ <COPYRIGHT> ]"); appendLine(result, " [ <SDO> ] [ <QUIET> ]"); appendLine(result, "<PROJECT-OPTION> ::= <MODEL-PROJECT> [ <EDIT-PROJECT> ] [ <EDITOR-PROJECT> ]"); appendLine(result, " [ <TESTS-PROJECT> ]"); appendLine(result, "<MODEL-PROJECT> ::= -modelProject <model-directory>"); appendLine(result, "<EDIT-PROJECT> ::= -editProject <edit-directory> <fragment-path>"); appendLine(result, "<EDITOR-PROJECT> ::= -editorProject <editor-directory> <fragment-path>"); appendLine(result, "<TESTS-PROJECT> ::= -testsProject <tests-directory> <fragment-path>"); appendLine(result, "<PACKAGE> ::= -package <nsURI> [ <base> <prefix> ]"); appendLine(result, "<REF-GEN-MODEL> ::= -refGenModel <model.genmodel> { <nsURI> }+"); appendLine(result, "<TEMPLATE-PATH> ::= -templatePath <template-directory>"); appendLine(result, "<MODEL-PLUGIN-ID> ::= -modelPluginID <plugin-ID>"); appendLine(result, "<COPYRIGHT> ::= -copyright <copyright-string>"); appendLine(result, "<JDK-LEVEL> ::= -jdkLevel <jdk level: 1.4 5.0 6.0>"); appendLine(result, "<VALIDATE-MODEL> ::= -validateModel <true|false>"); appendLine(result, "<SDO> ::= -sdo"); appendLine(result, "<QUIET> ::= -quiet"); appendLine(result, ""); appendLine(result, "For example:"); appendLine(result, ""); appendLine(result, ""); appendLine(result, " ecore2genmodel"); appendLine(result, " /library/model/lib.genmodel"); appendLine(result, " -modelProject result"); appendLine(result, " -editProject result.edit src"); appendLine(result, " -editorProject result.editor src"); return result;
Clone fragments detected by clone detection tool
File path: /emf-2.4.1/src/org/eclipse/emf/importer/ecore/EcoreImporterApplication.java File path: /emf-2.4.1/src/org/eclipse/emf/importer/java/JavaImporterApplication.java
Method name: StringBuffer getUsage() Method name: StringBuffer getUsage()
Number of AST nodes: 33 Number of AST nodes: 31
1
StringBuffer result = new StringBuffer();
1
StringBuffer result = new StringBuffer();
2
    appendLine(result, "Usage: { <model.ecore> }+ [ <model.genmodel> [ -reload ] ] <OPTION>");
2
    appendLine(result, "Usage: <workspace absolute path of model.genmodel> [ -reload ] <OPTION>");
3
    appendLine(result, "<OPTION>          ::= [ <PROJECT-OPTION> ]  [ <PATHMAP> ]");
3
    appendLine(result, "<OPTION>          ::= [ <PROJECT-OPTION> ]  [ <PATHMAP> ]");
4
    appendLine(result, "                      { <PACKAGE> }+  { <REF-PACKAGE> }* { <REF-GEN-MODEL> }*");
4
    appendLine(result, "                      { <PACKAGE> }+  { <REF-PACKAGE> }* { <REF-GEN-MODEL> }*");
5
    appendLine(result, "                      [ <TEMPLATE-PATH> ] [ <MODEL-PLUGIN-ID> ] [ <COPYRIGHT> ]");
5
    appendLine(result, "                      [ <TEMPLATE-PATH> ] [ <MODEL-PLUGIN-ID> ] [ <COPYRIGHT> ]");
6
    appendLine(result, "                      [ <SDO> ] [ <QUIET> ]");
6
    appendLine(result, "                      [ <SDO> ] [ <QUIET> ]");
7
    appendLine(result, "<PROJECT-OPTION>  ::= <MODEL-PROJECT> [ <EDIT-PROJECT> ] [ <EDITOR-PROJECT> ]");
7
    appendLine(result, "<PROJECT-OPTION>  ::= <MODEL-PROJECT> [ <EDIT-PROJECT> ] [ <EDITOR-PROJECT> ]");
8
    appendLine(result, "                      [ <TESTS-PROJECT> ]");
8
    appendLine(result, "                      [ <TESTS-PROJECT> ]");
9
    appendLine(result, "<MODEL-PROJECT>   ::= -modelProject <model-directory> <fragment-path>");
9
    appendLine(result, "<MODEL-PROJECT>   ::= -modelProject <model-directory>");
10
    appendLine(result, "<EDIT-PROJECT>    ::= -editProject <edit-directory> <fragment-path>");
10
    appendLine(result, "<EDIT-PROJECT>    ::= -editProject <edit-directory> <fragment-path>");
11
    appendLine(result, "<EDITOR-PROJECT>  ::= -editorProject <editor-directory> <fragment-path>");
11
    appendLine(result, "<EDITOR-PROJECT>  ::= -editorProject <editor-directory> <fragment-path>");
12
    appendLine(result, "<TESTS-PROJECT>   ::= -testsProject <tests-directory> <fragment-path>");
12
    appendLine(result, "<TESTS-PROJECT>   ::= -testsProject <tests-directory> <fragment-path>");
13
    appendLine(result, "<PACKAGE>         ::= -package <nsURI> [ <base> <prefix> ]");
13
    appendLine(result, "<PACKAGE>         ::= -package <nsURI> [ <base> <prefix> ]");
14
    appendLine(result, "<REF-GEN-MODEL>   ::= -refGenModel <model.genmodel> { <nsURI> }+");
14
    appendLine(result, "<REF-GEN-MODEL>   ::= -refGenModel <model.genmodel> { <nsURI> }+");
15
    appendLine(result, "<TEMPLATE-PATH>   ::= -templatePath <template-directory>");
15
    appendLine(result, "<TEMPLATE-PATH>   ::= -templatePath <template-directory>");
16
    appendLine(result, "<MODEL-PLUGIN-ID> ::= -modelPluginID <plugin-ID>");    
16
    appendLine(result, "<MODEL-PLUGIN-ID> ::= -modelPluginID <plugin-ID>");    
17
    appendLine(result, "<COPYRIGHT>       ::= -copyright <copyright-string>");
17
    appendLine(result, "<COPYRIGHT>       ::= -copyright <copyright-string>");
18
    appendLine(result, "<JDK-LEVEL>       ::= -jdkLevel <jdk level: 1.4 5.0 6.0>");    
18
    appendLine(result, "<JDK-LEVEL>       ::= -jdkLevel <jdk level: 1.4 5.0 6.0>");    
19
    appendLine(result, "<VALIDATE-MODEL>  ::= -validateModel <true|false>");
19
    appendLine(result, "<VALIDATE-MODEL>  ::= -validateModel <true|false>");
20
    appendLine(result, "<SDO>             ::= -sdo");
20
    appendLine(result, "<SDO>             ::= -sdo");
21
    appendLine(result, "<QUIET>           ::= -quiet");
21
    appendLine(result, "<QUIET>           ::= -quiet");
22
    appendLine(result, "");
22
    appendLine(result, "");
23
    appendLine(result, "For example:");
23
    appendLine(result, "For example:");
24
    appendLine(result, "");
24
    appendLine(result, "");
25
    appendLine(result, "");
25
    appendLine(result, "");
26
    appendLine(result, "  ecore2genmodel");
26
    appendLine(result, "  ecore2genmodel");
27
    appendLine(result, "    ../../etools.company/model.ecore");
27
    appendLine(result, "    
28
    appendLine(result, "    result/model/Extended.genmodel");
28
/library/model/lib.genmodel");
29
    appendLine(result, "    -modelProject result src");
29
    appendLine(result, "    -modelProject result");
30
    appendLine(result, "    -editProject result.edit src");
30
    appendLine(result, "    -editProject result.edit src");
31
    appendLine(result, "    -editorProject result.editor src");
31
    appendLine(result, "    -editorProject result.editor src");
32
    appendLine(result, "    -refGenModel company.genmodel http://org.sample.company");
33
    return result;
32
    return result;
Summary
Number of common nesting structure subtrees1
Number of refactorable cases0
Number of non-refactorable cases1
Time elapsed for finding largest common nesting structure subtrees (ms)0.0
Clones locationClones are in different classes having the same super class
Number of node comparisons963
  1. {Non-refactorable}
    Mapping Summary
    Number of mapped statements31
    Number of unmapped statements in the first code fragment2
    Number of unmapped statements in the second code fragment0
    Time elapsed for statement mapping (ms)0.0
    Clone typeType 3
    Mapped Statements
    ID Statement ID Statement
    1
    StringBuffer result = new StringBuffer();
    1
    StringBuffer result = new StringBuffer();
    2
    appendLine(result, "Usage: { <model.ecore> }+ [ <model.genmodel> [ -reload ] ] <OPTION>");
    2
    appendLine(result, "Usage: { <model.ecore> }+ [ <model.genmodel> [ -reload ] ] <OPTION>");
    2
    appendLine(result, "Usage: <workspace absolute path of model.genmodel> [ -reload ] <OPTION>");
    Differences
    Expression1Expression2Difference
    "Usage: { }+ [ [ -reload ] ] "Usage: [ -reload ] LITERAL_VALUE_MISMATCH
    2
    appendLine(result, "Usage: <workspace absolute path of model.genmodel> [ -reload ] <OPTION>");
    3
    appendLine(result, "<OPTION>          ::= [ <PROJECT-OPTION> ]  [ <PATHMAP> ]");
    3
    appendLine(result, "<OPTION>          ::= [ <PROJECT-OPTION> ]  [ <PATHMAP> ]");
    4
    appendLine(result, "                      { <PACKAGE> }+  { <REF-PACKAGE> }* { <REF-GEN-MODEL> }*");
    4
    appendLine(result, "                      { <PACKAGE> }+  { <REF-PACKAGE> }* { <REF-GEN-MODEL> }*");
    5
    appendLine(result, "                      [ <TEMPLATE-PATH> ] [ <MODEL-PLUGIN-ID> ] [ <COPYRIGHT> ]");
    5
    appendLine(result, "                      [ <TEMPLATE-PATH> ] [ <MODEL-PLUGIN-ID> ] [ <COPYRIGHT> ]");
    6
    appendLine(result, "                      [ <SDO> ] [ <QUIET> ]");
    6
    appendLine(result, "                      [ <SDO> ] [ <QUIET> ]");
    7
    appendLine(result, "<PROJECT-OPTION>  ::= <MODEL-PROJECT> [ <EDIT-PROJECT> ] [ <EDITOR-PROJECT> ]");
    7
    appendLine(result, "<PROJECT-OPTION>  ::= <MODEL-PROJECT> [ <EDIT-PROJECT> ] [ <EDITOR-PROJECT> ]");
    8
    appendLine(result, "                      [ <TESTS-PROJECT> ]");
    8
    appendLine(result, "                      [ <TESTS-PROJECT> ]");
    9
    appendLine(result, "<MODEL-PROJECT>   ::= -modelProject <model-directory> <fragment-path>");
    9
    appendLine(result, "<MODEL-PROJECT> ::= -modelProject <model-directory> <fragment-path>");
    9
    appendLine(result, "<MODEL-PROJECT> ::= -modelProject <model-directory>");
    Differences
    Expression1Expression2Difference
    " ::= -modelProject "" ::= -modelProject "LITERAL_VALUE_MISMATCH
    9
    appendLine(result, "<MODEL-PROJECT>   ::= -modelProject <model-directory>");
    10
    appendLine(result, "<EDIT-PROJECT>    ::= -editProject <edit-directory> <fragment-path>");
    10
    appendLine(result, "<EDIT-PROJECT>    ::= -editProject <edit-directory> <fragment-path>");
    11
    appendLine(result, "<EDITOR-PROJECT>  ::= -editorProject <editor-directory> <fragment-path>");
    11
    appendLine(result, "<EDITOR-PROJECT>  ::= -editorProject <editor-directory> <fragment-path>");
    12
    appendLine(result, "<TESTS-PROJECT>   ::= -testsProject <tests-directory> <fragment-path>");
    12
    appendLine(result, "<TESTS-PROJECT>   ::= -testsProject <tests-directory> <fragment-path>");
    13
    appendLine(result, "<PACKAGE>         ::= -package <nsURI> [ <base> <prefix> ]");
    13
    appendLine(result, "<PACKAGE>         ::= -package <nsURI> [ <base> <prefix> ]");
    14
    appendLine(result, "<REF-GEN-MODEL>   ::= -refGenModel <model.genmodel> { <nsURI> }+");
    14
    appendLine(result, "<REF-GEN-MODEL>   ::= -refGenModel <model.genmodel> { <nsURI> }+");
    15
    appendLine(result, "<TEMPLATE-PATH>   ::= -templatePath <template-directory>");
    15
    appendLine(result, "<TEMPLATE-PATH>   ::= -templatePath <template-directory>");
    16
    appendLine(result, "<MODEL-PLUGIN-ID> ::= -modelPluginID <plugin-ID>");
    16
    appendLine(result, "<MODEL-PLUGIN-ID> ::= -modelPluginID <plugin-ID>");
    17
    appendLine(result, "<COPYRIGHT>       ::= -copyright <copyright-string>");
    17
    appendLine(result, "<COPYRIGHT>       ::= -copyright <copyright-string>");
    18
    appendLine(result, "<JDK-LEVEL>       ::= -jdkLevel <jdk level: 1.4 5.0 6.0>");
    18
    appendLine(result, "<JDK-LEVEL>       ::= -jdkLevel <jdk level: 1.4 5.0 6.0>");
    19
    appendLine(result, "<VALIDATE-MODEL>  ::= -validateModel <true|false>");
    19
    appendLine(result, "<VALIDATE-MODEL>  ::= -validateModel <true|false>");
    20
    appendLine(result, "<SDO>             ::= -sdo");
    20
    appendLine(result, "<SDO>             ::= -sdo");
    21
    appendLine(result, "<QUIET>           ::= -quiet");
    21
    appendLine(result, "<QUIET>           ::= -quiet");
    22
    appendLine(result, "");
    22
    appendLine(result, "");
    23
    appendLine(result, "For example:");
    23
    appendLine(result, "For example:");
    24
    appendLine(result, "");
    24
    appendLine(result, "");
    25
    appendLine(result, "");
    25
    appendLine(result, "");
    26
    appendLine(result, "  ecore2genmodel");
    26
    appendLine(result, "  ecore2genmodel");
    27
    appendLine(result, "    ../../etools.company/model.ecore");
    27
    appendLine(result, " ../../etools.company/model.ecore");
    27
    appendLine(result, " /library/model/lib.genmodel");
    Differences
    Expression1Expression2Difference
    " ../../etools.company/model.ecore"" /library/model/lib.genmodel"LITERAL_VALUE_MISMATCH
    27
    appendLine(result, "    /library/model/lib.genmodel");
    28
    appendLine(result, "    result/model/Extended.genmodel");
    28
    appendLine(result, " result/model/Extended.genmodel");
    28
    appendLine(result, " -modelProject result");
    Differences
    Expression1Expression2Difference
    " result/model/Extended.genmodel"" -modelProject result"LITERAL_VALUE_MISMATCH
    28
    appendLine(result, "    -modelProject result");
    29
    appendLine(result, "    -modelProject result src");
    29
    appendLine(result, " -modelProject result src");
    29
    appendLine(result, " -editProject result.edit src");
    Differences
    Expression1Expression2Difference
    " -modelProject result src"" -editProject result.edit src"LITERAL_VALUE_MISMATCH
    29
    appendLine(result, "    -editProject result.edit src");
    30
    appendLine(result, "    -editProject result.edit src");
    30
    appendLine(result, " -editProject result.edit src");
    30
    appendLine(result, " -editorProject result.editor src");
    Differences
    Expression1Expression2Difference
    " -editProject result.edit src"" -editorProject result.editor src"LITERAL_VALUE_MISMATCH
    30
    appendLine(result, "    -editorProject result.editor src");
    31
    appendLine(result, "    -editorProject result.editor src");
                                                                                                                                
    32
    appendLine(result, "    -refGenModel company.genmodel http://org.sample.company");
                                                                                                                                                                              
    33
    return result;
    31
    return result;
    Precondition Violations (1)
    Row Violation
    1Clone fragment #1 returns variables result , while Clone fragment #2 returns variables