if ((p = getProject().getProperty("ant.netrexxc.binary")) != null) { this.binary = Project.toBoolean(p); } // classpath makes no sense if ((p = getProject().getProperty("ant.netrexxc.comments")) != null) { this.comments = Project.toBoolean(p); } if ((p = getProject().getProperty("ant.netrexxc.compact")) != null) { this.compact = Project.toBoolean(p); } if ((p = getProject().getProperty("ant.netrexxc.compile")) != null) { this.compile = Project.toBoolean(p); } if ((p = getProject().getProperty("ant.netrexxc.console")) != null) { this.console = Project.toBoolean(p); } if ((p = getProject().getProperty("ant.netrexxc.crossref")) != null) { this.crossref = Project.toBoolean(p); } if ((p = getProject().getProperty("ant.netrexxc.decimal")) != null) { this.decimal = Project.toBoolean(p); // destDir } if ((p = getProject().getProperty("ant.netrexxc.diag")) != null) { this.diag = Project.toBoolean(p); } if ((p = getProject().getProperty("ant.netrexxc.explicit")) != null) { this.explicit = Project.toBoolean(p); } if ((p = getProject().getProperty("ant.netrexxc.format")) != null) { this.format = Project.toBoolean(p); } if ((p = getProject().getProperty("ant.netrexxc.keep")) != null) { this.keep = Project.toBoolean(p); } if ((p = getProject().getProperty("ant.netrexxc.logo")) != null) { this.logo = Project.toBoolean(p); } if ((p = getProject().getProperty("ant.netrexxc.replace")) != null) { this.replace = Project.toBoolean(p); } if ((p = getProject().getProperty("ant.netrexxc.savelog")) != null) { this.savelog = Project.toBoolean(p); // srcDir }
if ((p = getProject().getProperty("ant.netrexxc.format")) != null) { this.format = Project.toBoolean(p); } if ((p = getProject().getProperty("ant.netrexxc.keep")) != null) { this.keep = Project.toBoolean(p); } if ((p = getProject().getProperty("ant.netrexxc.logo")) != null) { this.logo = Project.toBoolean(p); } if ((p = getProject().getProperty("ant.netrexxc.replace")) != null) { this.replace = Project.toBoolean(p); } if ((p = getProject().getProperty("ant.netrexxc.savelog")) != null) { this.savelog = Project.toBoolean(p); // srcDir } if ((p = getProject().getProperty("ant.netrexxc.sourcedir")) != null) { this.sourcedir = Project.toBoolean(p); } if ((p = getProject().getProperty("ant.netrexxc.strictargs")) != null) { this.strictargs = Project.toBoolean(p); } if ((p = getProject().getProperty("ant.netrexxc.strictassign")) != null) { this.strictassign = Project.toBoolean(p); } if ((p = getProject().getProperty("ant.netrexxc.strictcase")) != null) { this.strictcase = Project.toBoolean(p); } if ((p = getProject().getProperty("ant.netrexxc.strictimport")) != null) { this.strictimport = Project.toBoolean(p); } if ((p = getProject().getProperty("ant.netrexxc.strictprops")) != null) { this.strictprops = Project.toBoolean(p); } if ((p = getProject().getProperty("ant.netrexxc.strictsignal")) != null) { this.strictsignal = Project.toBoolean(p); } if ((p = getProject().getProperty("ant.netrexxc.symbols")) != null) { this.symbols = Project.toBoolean(p); } if ((p = getProject().getProperty("ant.netrexxc.time")) != null) { this.time = Project.toBoolean(p); }
Clone fragments detected by clone detection tool
File path: /apache-ant-1.7.0/src/org/apache/tools/ant/taskdefs/optional/NetRexxC.java File path: /apache-ant-1.7.0/src/org/apache/tools/ant/taskdefs/optional/NetRexxC.java
Method name: void init() Method name: void init()
Number of AST nodes: 28 Number of AST nodes: 28
1
if ((p = getProject().getProperty("ant.netrexxc.binary")) != null) {
1
if ((p = getProject().getProperty("ant.netrexxc.format")) != null) {
2
            this.binary = Project.toBoolean(p);
2
            this.format = Project.toBoolean(p);
3
        }
3
        }
4
        // classpath makes no sense
5
        if ((p = getProject().getProperty("ant.netrexxc.comments")) != null) {
4
        if ((p = getProject().getProperty("ant.netrexxc.keep")) != null) {
6
            this.comments = Project.toBoolean(p);
5
            this.keep = Project.toBoolean(p);
7
        }
6
        }
8
        if ((p = getProject().getProperty("ant.netrexxc.compact")) != null) {
7
        if ((p = getProject().getProperty("ant.netrexxc.logo")) != null) {
9
            this.compact = Project.toBoolean(p);
8
            this.logo = Project.toBoolean(p);
10
        }
9
        }
11
        if ((p = getProject().getProperty("ant.netrexxc.compile")) != null) {
10
        if ((p = getProject().getProperty("ant.netrexxc.replace")) != null) {
12
            this.compile = Project.toBoolean(p);
11
            this.replace = Project.toBoolean(p);
13
        }
12
        }
14
        if ((p = getProject().getProperty("ant.netrexxc.console")) != null) {
13
        if ((p = getProject().getProperty("ant.netrexxc.savelog")) != null) {
15
            this.console = Project.toBoolean(p);
14
            this.savelog = Project.toBoolean(p);
15
            // srcDir
16
        }
16
        }
17
        if ((p = getProject().getProperty("ant.netrexxc.crossref")) != null) {
17
        if ((p = getProject().getProperty("ant.netrexxc.sourcedir")) != null) {
18
            this.crossref = Project.toBoolean(p);
18
            this.sourcedir = Project.toBoolean(p);
19
        }
19
        }
20
        if ((p = getProject().getProperty("ant.netrexxc.decimal")) != null) {
20
        if ((p = getProject().getProperty("ant.netrexxc.strictargs")) != null) {
21
            this.decimal = Project.toBoolean(p);
21
            this.strictargs = Project.toBoolean(p);
22
            // destDir
23
        }
22
        }
24
        if ((p = getProject().getProperty("ant.netrexxc.diag")) != null) {
23
        if ((p = getProject().getProperty("ant.netrexxc.strictassign")) != null) {
25
            this.diag = Project.toBoolean(p);
24
            this.strictassign = Project.toBoolean(p);
26
        }
25
        }
27
        if ((p = getProject().getProperty("ant.netrexxc.explicit")) != null) {
26
        if ((p = getProject().getProperty("ant.netrexxc.strictcase")) != null) {
28
            this.explicit = Project.toBoolean(p);
27
            this.strictcase = Project.toBoolean(p);
29
        }
28
        }
30
        if ((p = getProject().getProperty("ant.netrexxc.format")) != null) {
29
        if ((p = getProject().getProperty("ant.netrexxc.strictimport")) != null) {
31
            this.format = Project.toBoolean(p);
30
            this.strictimport = Project.toBoolean(p);
32
        }
31
        }
33
        if ((p = getProject().getProperty("ant.netrexxc.keep")) != null) {
32
        if ((p = getProject().getProperty("ant.netrexxc.strictprops")) != null) {
34
            this.keep = Project.toBoolean(p);
33
            this.strictprops = Project.toBoolean(p);
35
        }
34
        }
36
        if ((p = getProject().getProperty("ant.netrexxc.logo")) != null) {
35
        if ((p = getProject().getProperty("ant.netrexxc.strictsignal")) != null) {
37
            this.logo = Project.toBoolean(p);
36
            this.strictsignal = Project.toBoolean(p);
38
        }
37
        }
39
        if ((p = getProject().getProperty("ant.netrexxc.replace")) != null) {
38
        if ((p = getProject().getProperty("ant.netrexxc.symbols")) != null) {
40
            this.replace = Project.toBoolean(p);
39
            this.symbols = Project.toBoolean(p);
41
        }
40
        }
42
        if ((p = getProject().getProperty("ant.netrexxc.savelog")) != null) {
41
        if ((p = getProject().getProperty("ant.netrexxc.time")) != null) {
43
            this.savelog = Project.toBoolean(p);
42
            this.time = Project.toBoolean(p);
44
            // srcDir
45
        }
43
        }
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)22.8
Clones locationClones are in the same method
Number of node comparisons511
  1. {Non-refactorable}
    Mapping Summary
    Number of mapped statements28
    Number of unmapped statements in the first code fragment0
    Number of unmapped statements in the second code fragment0
    Time elapsed for statement mapping (ms)14.8
    Clone typeType 2
    Mapped Statements
    ID Statement ID Statement
    2
    if ((p = getProject().getProperty("ant.netrexxc.binary")) != null)
    2
    if ((p = getProject().getProperty("ant.netrexxc.binary")) != null)
    20
    if ((p = getProject().getProperty("ant.netrexxc.format")) != null)
    Differences
    Expression1Expression2Difference
    "ant.netrexxc.binary""ant.netrexxc.format"LITERAL_VALUE_MISMATCH
    20
    if ((p = getProject().getProperty("ant.netrexxc.format")) != null)
    3
    this.binary = Project.toBoolean(p);
    3
    this.binary = Project.toBoolean(p);
    21
    this.format = Project.toBoolean(p);
    Differences
    Expression1Expression2Difference
    binaryformatVARIABLE_NAME_MISMATCH
    Preondition Violations
    Expression this.binary is a field being modified, and thus it cannot be parameterized
    Expression this.format is a field being modified, and thus it cannot be parameterized
    21
    this.format = Project.toBoolean(p);
    4
    if ((p = getProject().getProperty("ant.netrexxc.comments")) != null)
    4
    if ((p = getProject().getProperty("ant.netrexxc.comments")) != null)
    22
    if ((p = getProject().getProperty("ant.netrexxc.keep")) != null)
    Differences
    Expression1Expression2Difference
    "ant.netrexxc.comments""ant.netrexxc.keep"LITERAL_VALUE_MISMATCH
    22
    if ((p = getProject().getProperty("ant.netrexxc.keep")) != null)
    5
    this.comments = Project.toBoolean(p);
    5
    this.comments = Project.toBoolean(p);
    23
    this.keep = Project.toBoolean(p);
    Differences
    Expression1Expression2Difference
    commentskeepVARIABLE_NAME_MISMATCH
    Preondition Violations
    Expression this.comments is a field being modified, and thus it cannot be parameterized
    Expression this.keep is a field being modified, and thus it cannot be parameterized
    23
    this.keep = Project.toBoolean(p);
    6
    if ((p = getProject().getProperty("ant.netrexxc.compact")) != null)
    6
    if ((p = getProject().getProperty("ant.netrexxc.compact")) != null)
    24
    if ((p = getProject().getProperty("ant.netrexxc.logo")) != null)
    Differences
    Expression1Expression2Difference
    "ant.netrexxc.compact""ant.netrexxc.logo"LITERAL_VALUE_MISMATCH
    24
    if ((p = getProject().getProperty("ant.netrexxc.logo")) != null)
    7
    this.compact = Project.toBoolean(p);
    7
    this.compact = Project.toBoolean(p);
    25
    this.logo = Project.toBoolean(p);
    Differences
    Expression1Expression2Difference
    compactlogoVARIABLE_NAME_MISMATCH
    Preondition Violations
    Expression this.compact is a field being modified, and thus it cannot be parameterized
    Expression this.logo is a field being modified, and thus it cannot be parameterized
    25
    this.logo = Project.toBoolean(p);
    8
    if ((p = getProject().getProperty("ant.netrexxc.compile")) != null)
    8
    if ((p = getProject().getProperty("ant.netrexxc.compile")) != null)
    26
    if ((p = getProject().getProperty("ant.netrexxc.replace")) != null)
    Differences
    Expression1Expression2Difference
    "ant.netrexxc.compile""ant.netrexxc.replace"LITERAL_VALUE_MISMATCH
    26
    if ((p = getProject().getProperty("ant.netrexxc.replace")) != null)
    9
    this.compile = Project.toBoolean(p);
    9
    this.compile = Project.toBoolean(p);
    27
    this.replace = Project.toBoolean(p);
    Differences
    Expression1Expression2Difference
    compilereplaceVARIABLE_NAME_MISMATCH
    Preondition Violations
    Expression this.compile is a field being modified, and thus it cannot be parameterized
    Expression this.replace is a field being modified, and thus it cannot be parameterized
    27
    this.replace = Project.toBoolean(p);
    10
    if ((p = getProject().getProperty("ant.netrexxc.console")) != null)
    10
    if ((p = getProject().getProperty("ant.netrexxc.console")) != null)
    28
    if ((p = getProject().getProperty("ant.netrexxc.savelog")) != null)
    Differences
    Expression1Expression2Difference
    "ant.netrexxc.console""ant.netrexxc.savelog"LITERAL_VALUE_MISMATCH
    28
    if ((p = getProject().getProperty("ant.netrexxc.savelog")) != null)
    11
    this.console = Project.toBoolean(p);
    11
    this.console = Project.toBoolean(p);
    29
    this.savelog = Project.toBoolean(p);
    Differences
    Expression1Expression2Difference
    consolesavelogVARIABLE_NAME_MISMATCH
    Preondition Violations
    Expression this.console is a field being modified, and thus it cannot be parameterized
    Expression this.savelog is a field being modified, and thus it cannot be parameterized
    29
    this.savelog = Project.toBoolean(p);
    12
    if ((p = getProject().getProperty("ant.netrexxc.crossref")) != null)
    12
    if ((p = getProject().getProperty("ant.netrexxc.crossref")) != null)
    30
    if ((p = getProject().getProperty("ant.netrexxc.sourcedir")) != null)
    Differences
    Expression1Expression2Difference
    "ant.netrexxc.crossref""ant.netrexxc.sourcedir"LITERAL_VALUE_MISMATCH
    30
    if ((p = getProject().getProperty("ant.netrexxc.sourcedir")) != null)
    13
    this.crossref = Project.toBoolean(p);
    13
    this.crossref = Project.toBoolean(p);
    31
    this.sourcedir = Project.toBoolean(p);
    Differences
    Expression1Expression2Difference
    crossrefsourcedirVARIABLE_NAME_MISMATCH
    Preondition Violations
    Expression this.crossref is a field being modified, and thus it cannot be parameterized
    Expression this.sourcedir is a field being modified, and thus it cannot be parameterized
    31
    this.sourcedir = Project.toBoolean(p);
    14
    if ((p = getProject().getProperty("ant.netrexxc.decimal")) != null)
    14
    if ((p = getProject().getProperty("ant.netrexxc.decimal")) != null)
    32
    if ((p = getProject().getProperty("ant.netrexxc.strictargs")) != null)
    Differences
    Expression1Expression2Difference
    "ant.netrexxc.decimal""ant.netrexxc.strictargs"LITERAL_VALUE_MISMATCH
    32
    if ((p = getProject().getProperty("ant.netrexxc.strictargs")) != null)
    15
    this.decimal = Project.toBoolean(p);
    15
    this.decimal = Project.toBoolean(p);
    33
    this.strictargs = Project.toBoolean(p);
    Differences
    Expression1Expression2Difference
    decimalstrictargsVARIABLE_NAME_MISMATCH
    Preondition Violations
    Expression this.decimal is a field being modified, and thus it cannot be parameterized
    Expression this.strictargs is a field being modified, and thus it cannot be parameterized
    33
    this.strictargs = Project.toBoolean(p);
    16
    if ((p = getProject().getProperty("ant.netrexxc.diag")) != null)
    16
    if ((p = getProject().getProperty("ant.netrexxc.diag")) != null)
    34
    if ((p = getProject().getProperty("ant.netrexxc.strictassign")) != null)
    Differences
    Expression1Expression2Difference
    "ant.netrexxc.diag""ant.netrexxc.strictassign"LITERAL_VALUE_MISMATCH
    34
    if ((p = getProject().getProperty("ant.netrexxc.strictassign")) != null)
    17
    this.diag = Project.toBoolean(p);
    17
    this.diag = Project.toBoolean(p);
    35
    this.strictassign = Project.toBoolean(p);
    Differences
    Expression1Expression2Difference
    diagstrictassignVARIABLE_NAME_MISMATCH
    Preondition Violations
    Expression this.diag is a field being modified, and thus it cannot be parameterized
    Expression this.strictassign is a field being modified, and thus it cannot be parameterized
    35
    this.strictassign = Project.toBoolean(p);
    18
    if ((p = getProject().getProperty("ant.netrexxc.explicit")) != null)
    18
    if ((p = getProject().getProperty("ant.netrexxc.explicit")) != null)
    36
    if ((p = getProject().getProperty("ant.netrexxc.strictcase")) != null)
    Differences
    Expression1Expression2Difference
    "ant.netrexxc.explicit""ant.netrexxc.strictcase"LITERAL_VALUE_MISMATCH
    36
    if ((p = getProject().getProperty("ant.netrexxc.strictcase")) != null)
    19
    this.explicit = Project.toBoolean(p);
    19
    this.explicit = Project.toBoolean(p);
    37
    this.strictcase = Project.toBoolean(p);
    Differences
    Expression1Expression2Difference
    explicitstrictcaseVARIABLE_NAME_MISMATCH
    Preondition Violations
    Expression this.explicit is a field being modified, and thus it cannot be parameterized
    Expression this.strictcase is a field being modified, and thus it cannot be parameterized
    37
    this.strictcase = Project.toBoolean(p);
    20
    if ((p = getProject().getProperty("ant.netrexxc.format")) != null)
    20
    if ((p = getProject().getProperty("ant.netrexxc.format")) != null)
    38
    if ((p = getProject().getProperty("ant.netrexxc.strictimport")) != null)
    Differences
    Expression1Expression2Difference
    "ant.netrexxc.format""ant.netrexxc.strictimport"LITERAL_VALUE_MISMATCH
    38
    if ((p = getProject().getProperty("ant.netrexxc.strictimport")) != null)
    21
    this.format = Project.toBoolean(p);
    21
    this.format = Project.toBoolean(p);
    39
    this.strictimport = Project.toBoolean(p);
    Differences
    Expression1Expression2Difference
    formatstrictimportVARIABLE_NAME_MISMATCH
    Preondition Violations
    Expression this.format is a field being modified, and thus it cannot be parameterized
    Expression this.strictimport is a field being modified, and thus it cannot be parameterized
    39
    this.strictimport = Project.toBoolean(p);
    22
    if ((p = getProject().getProperty("ant.netrexxc.keep")) != null)
    22
    if ((p = getProject().getProperty("ant.netrexxc.keep")) != null)
    40
    if ((p = getProject().getProperty("ant.netrexxc.strictprops")) != null)
    Differences
    Expression1Expression2Difference
    "ant.netrexxc.keep""ant.netrexxc.strictprops"LITERAL_VALUE_MISMATCH
    40
    if ((p = getProject().getProperty("ant.netrexxc.strictprops")) != null)
    23
    this.keep = Project.toBoolean(p);
    23
    this.keep = Project.toBoolean(p);
    41
    this.strictprops = Project.toBoolean(p);
    Differences
    Expression1Expression2Difference
    keepstrictpropsVARIABLE_NAME_MISMATCH
    Preondition Violations
    Expression this.keep is a field being modified, and thus it cannot be parameterized
    Expression this.strictprops is a field being modified, and thus it cannot be parameterized
    41
    this.strictprops = Project.toBoolean(p);
    24
    if ((p = getProject().getProperty("ant.netrexxc.logo")) != null)
    24
    if ((p = getProject().getProperty("ant.netrexxc.logo")) != null)
    42
    if ((p = getProject().getProperty("ant.netrexxc.strictsignal")) != null)
    Differences
    Expression1Expression2Difference
    "ant.netrexxc.logo""ant.netrexxc.strictsignal"LITERAL_VALUE_MISMATCH
    42
    if ((p = getProject().getProperty("ant.netrexxc.strictsignal")) != null)
    25
    this.logo = Project.toBoolean(p);
    25
    this.logo = Project.toBoolean(p);
    43
    this.strictsignal = Project.toBoolean(p);
    Differences
    Expression1Expression2Difference
    logostrictsignalVARIABLE_NAME_MISMATCH
    Preondition Violations
    Expression this.logo is a field being modified, and thus it cannot be parameterized
    Expression this.strictsignal is a field being modified, and thus it cannot be parameterized
    43
    this.strictsignal = Project.toBoolean(p);
    26
    if ((p = getProject().getProperty("ant.netrexxc.replace")) != null)
    26
    if ((p = getProject().getProperty("ant.netrexxc.replace")) != null)
    44
    if ((p = getProject().getProperty("ant.netrexxc.symbols")) != null)
    Differences
    Expression1Expression2Difference
    "ant.netrexxc.replace""ant.netrexxc.symbols"LITERAL_VALUE_MISMATCH
    44
    if ((p = getProject().getProperty("ant.netrexxc.symbols")) != null)
    27
    this.replace = Project.toBoolean(p);
    27
    this.replace = Project.toBoolean(p);
    45
    this.symbols = Project.toBoolean(p);
    Differences
    Expression1Expression2Difference
    replacesymbolsVARIABLE_NAME_MISMATCH
    Preondition Violations
    Expression this.replace is a field being modified, and thus it cannot be parameterized
    Expression this.symbols is a field being modified, and thus it cannot be parameterized
    45
    this.symbols = Project.toBoolean(p);
    28
    if ((p = getProject().getProperty("ant.netrexxc.savelog")) != null)
    28
    if ((p = getProject().getProperty("ant.netrexxc.savelog")) != null)
    46
    if ((p = getProject().getProperty("ant.netrexxc.time")) != null)
    Differences
    Expression1Expression2Difference
    "ant.netrexxc.savelog""ant.netrexxc.time"LITERAL_VALUE_MISMATCH
    46
    if ((p = getProject().getProperty("ant.netrexxc.time")) != null)
    29
    this.savelog = Project.toBoolean(p);
    29
    this.savelog = Project.toBoolean(p);
    47
    this.time = Project.toBoolean(p);
    Differences
    Expression1Expression2Difference
    savelogtimeVARIABLE_NAME_MISMATCH
    Preondition Violations
    Expression this.savelog is a field being modified, and thus it cannot be parameterized
    Expression this.time is a field being modified, and thus it cannot be parameterized
    47
    this.time = Project.toBoolean(p);
    Precondition Violations (28)
    Row Violation
    1Expression this.binary is a field being modified, and thus it cannot be parameterized
    2Expression this.format is a field being modified, and thus it cannot be parameterized
    3Expression this.comments is a field being modified, and thus it cannot be parameterized
    4Expression this.keep is a field being modified, and thus it cannot be parameterized
    5Expression this.compact is a field being modified, and thus it cannot be parameterized
    6Expression this.logo is a field being modified, and thus it cannot be parameterized
    7Expression this.compile is a field being modified, and thus it cannot be parameterized
    8Expression this.replace is a field being modified, and thus it cannot be parameterized
    9Expression this.console is a field being modified, and thus it cannot be parameterized
    10Expression this.savelog is a field being modified, and thus it cannot be parameterized
    11Expression this.crossref is a field being modified, and thus it cannot be parameterized
    12Expression this.sourcedir is a field being modified, and thus it cannot be parameterized
    13Expression this.decimal is a field being modified, and thus it cannot be parameterized
    14Expression this.strictargs is a field being modified, and thus it cannot be parameterized
    15Expression this.diag is a field being modified, and thus it cannot be parameterized
    16Expression this.strictassign is a field being modified, and thus it cannot be parameterized
    17Expression this.explicit is a field being modified, and thus it cannot be parameterized
    18Expression this.strictcase is a field being modified, and thus it cannot be parameterized
    19Expression this.format is a field being modified, and thus it cannot be parameterized
    20Expression this.strictimport is a field being modified, and thus it cannot be parameterized
    21Expression this.keep is a field being modified, and thus it cannot be parameterized
    22Expression this.strictprops is a field being modified, and thus it cannot be parameterized
    23Expression this.logo is a field being modified, and thus it cannot be parameterized
    24Expression this.strictsignal is a field being modified, and thus it cannot be parameterized
    25Expression this.replace is a field being modified, and thus it cannot be parameterized
    26Expression this.symbols is a field being modified, and thus it cannot be parameterized
    27Expression this.savelog is a field being modified, and thus it cannot be parameterized
    28Expression this.time is a field being modified, and thus it cannot be parameterized