if (dataset != null) { if (getItemVisible(series, 0)) { String label = getLegendItemLabelGenerator().generateLabel( dataset, series); String description = label; String toolTipText = null; if (getLegendItemToolTipGenerator() != null) { toolTipText = getLegendItemToolTipGenerator().generateLabel( dataset, series); } String urlText = null; if (getLegendItemURLGenerator() != null) { urlText = getLegendItemURLGenerator().generateLabel( dataset, series); } Shape shape = new Ellipse2D.Double(-4.0, -4.0, 8.0, 8.0); Paint paint = lookupSeriesPaint(series); Paint outlinePaint = lookupSeriesOutlinePaint(series); Stroke outlineStroke = lookupSeriesOutlineStroke(series); result = new LegendItem(label, description, toolTipText, urlText, shape, paint, outlineStroke, outlinePaint); result.setDataset(dataset); result.setDatasetIndex(datasetIndex); result.setSeriesKey(dataset.getSeriesKey(series)); result.setSeriesIndex(series); } }
if (p != null) { XYDataset dataset = p.getDataset(datasetIndex); if (dataset != null) { if (getItemVisible(series, 0)) { String label = getLegendItemLabelGenerator().generateLabel( dataset, series); String description = label; String toolTipText = null; if (getLegendItemToolTipGenerator() != null) { toolTipText = getLegendItemToolTipGenerator().generateLabel( dataset, series); } String urlText = null; if (getLegendItemURLGenerator() != null) { urlText = getLegendItemURLGenerator().generateLabel( dataset, series); } Paint paint = lookupSeriesPaint(series); Stroke stroke = lookupSeriesStroke(series); // TODO: the following hard-coded line needs generalising Line2D line = new Line2D.Double(-7.0, 0.0, 7.0, 0.0); result = new LegendItem(label, description, toolTipText, urlText, line, stroke, paint); result.setDataset(dataset); result.setDatasetIndex(datasetIndex); result.setSeriesKey(dataset.getSeriesKey(series)); result.setSeriesIndex(series); } } }
Clone fragments detected by clone detection tool
File path: /jfreechart-1.0.10/src/org/jfree/chart/renderer/xy/XYBubbleRenderer.java File path: /jfreechart-1.0.10/src/org/jfree/chart/renderer/xy/XYDifferenceRenderer.java
Method name: LegendItem getLegendItem(int, int) Method name: LegendItem getLegendItem(int, int)
Number of AST nodes: 19 Number of AST nodes: 20
1
if (p != null) {
2
            XYDataset dataset = p.getDataset(datasetIndex);
1
if (dataset != null) {
3
            if (dataset != null) {
2
            if (getItemVisible(series, 0)) {
4
                if (getItemVisible(series, 0)) {
3
                String label = getLegendItemLabelGenerator().generateLabel(
5
                    String label = getLegendItemLabelGenerator().generateLabel(
4
                        dataset, series);
6
                            dataset, series);
5
                String description = label;
7
                    String description = label;
6
                String toolTipText = null;
8
                    String toolTipText = null;
7
                if (getLegendItemToolTipGenerator() != null) {
9
                    if (getLegendItemToolTipGenerator() != null) {
8
                    toolTipText 
10
                        toolTipText 
9
= getLegendItemToolTipGenerator().generateLabel(
11
                            = getLegendItemToolTipGenerator().generateLabel(
10
                            dataset, series);
12
                                    dataset, series);
11
                }
13
                    }
12
                String urlText = null;
14
                    String urlText = null;
13
                if (getLegendItemURLGenerator() != null) {
15
                    if (getLegendItemURLGenerator() != null) {
14
                    urlText = getLegendItemURLGenerator().generateLabel(
16
                        urlText = getLegendItemURLGenerator().generateLabel(
15
                            dataset, series);
17
                                dataset, series);
16
                }
18
                    }
17
                Shape shape = new Ellipse2D.Double(-4.0, -4.0, 8.0, 8.0);
19
    
18
                Paint paint = lookupSeriesPaint(series);
20
                Paint paint = lookupSeriesPaint(series);
19
                Paint outlinePaint = lookupSeriesOutlinePaint(series);
21
                    Stroke stroke = lookupSeriesStroke(series);
20
                Stroke outlineStroke = lookupSeriesOutlineStroke(series);
22
                
23
    // TODO:  the following hard-coded line needs generalising
24
                    Line2D line = new Line2D.Double(-7.0, 0.0, 7.0, 0.0);
21
                result = new LegendItem(label, description, toolTipText, 
25
                    result = new LegendItem(label, description, 
22
                        urlText, shape, paint, outlineStroke, outlinePaint);
26
                            toolTipText, urlText, line, stroke, paint);
23
                result.setDataset(dataset);
27
                    result.setDataset(dataset);
24
                result.setDatasetIndex(datasetIndex);
28
                    result.setDatasetIndex(datasetIndex);
25
                result.setSeriesKey(dataset.getSeriesKey(series));
29
                    result.setSeriesKey(dataset.getSeriesKey(series));
26
                result.setSeriesIndex(series);
30
                    result.setSeriesIndex(series);
27
            }
31
                }
32
            }
28
        }
33
        }
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.5
Clones locationClones are in different classes having the same super class
Number of node comparisons196
  1. {Non-refactorable}
    Mapping Summary
    Number of mapped statements17
    Number of unmapped statements in the first code fragment2
    Number of unmapped statements in the second code fragment2
    Time elapsed for statement mapping (ms)9.2
    Clone typeType 3
    Mapped Statements
    ID Statement ID Statement
                                                                                                    
    4
    XYDataset dataset = p.getDataset(datasetIndex);
    6
    if (dataset != null)
    5
    if (dataset != null)
    7
    if (getItemVisible(series, 0))
    6
    if (getItemVisible(series, 0))
    8
    String label = getLegendItemLabelGenerator().generateLabel(dataset, series);
    7
    String label = getLegendItemLabelGenerator().generateLabel(dataset, series);
    9
    String description = label;
    8
    String description = label;
    10
    String toolTipText = null;
    9
    String toolTipText = null;
    11
    if (getLegendItemToolTipGenerator() != null)
    10
    if (getLegendItemToolTipGenerator() != null)
    12
    toolTipText = getLegendItemToolTipGenerator().generateLabel(dataset, series);
    11
    toolTipText = getLegendItemToolTipGenerator().generateLabel(dataset, series);
    13
    String urlText = null;
    12
    String urlText = null;
    14
    if (getLegendItemURLGenerator() != null)
    13
    if (getLegendItemURLGenerator() != null)
    15
    urlText = getLegendItemURLGenerator().generateLabel(dataset, series);
    14
    urlText = getLegendItemURLGenerator().generateLabel(dataset, series);
    16
    Shape shape = new Ellipse2D.Double(-4.0, -4.0, 8.0, 8.0);
                                                                                                                    
    17
    Paint paint = lookupSeriesPaint(series);
    15
    Paint paint = lookupSeriesPaint(series);
    18
    Paint outlinePaint = lookupSeriesOutlinePaint(series);
                                                                                                                    
    19
    Stroke outlineStroke = lookupSeriesOutlineStroke(series);
    19
    Stroke outlineStroke = lookupSeriesOutlineStroke(series);
    16
    Stroke stroke = lookupSeriesStroke(series);
    Differences
    Expression1Expression2Difference
    outlineStrokestrokeVARIABLE_NAME_MISMATCH
    lookupSeriesOutlineStrokelookupSeriesStrokeMETHOD_INVOCATION_NAME_MISMATCH
    16
    Stroke stroke = lookupSeriesStroke(series);
                                                                                                            
    17
    Line2D line = new Line2D.Double(-7.0, 0.0, 7.0, 0.0);
    20
    result = new LegendItem(label, description, toolTipText, urlText, shape, paint, outlineStroke, outlinePaint);
    20
    result = new LegendItem(label, description, toolTipText, urlText, shape, paint, outlineStroke, outlinePaint);
    18
    result = new LegendItem(label, description, toolTipText, urlText, line, stroke, paint);
    Differences
    Expression1Expression2Difference
    new LegendItem(label,description,toolTipText,urlText,shape,paint,outlineStroke,outlinePaint)new LegendItem(label,description,toolTipText,urlText,line,stroke,paint)ARGUMENT_NUMBER_MISMATCH
    Preondition Violations
    Expression new LegendItem(label,description,toolTipText,urlText,shape,paint,outlineStroke,outlinePaint) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression new LegendItem(label,description,toolTipText,urlText,line,stroke,paint) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    18
    result = new LegendItem(label, description, toolTipText, urlText, line, stroke, paint);
    21
    result.setDataset(dataset);
    19
    result.setDataset(dataset);
    22
    result.setDatasetIndex(datasetIndex);
    20
    result.setDatasetIndex(datasetIndex);
    23
    result.setSeriesKey(dataset.getSeriesKey(series));
    21
    result.setSeriesKey(dataset.getSeriesKey(series));
    24
    result.setSeriesIndex(series);
    22
    result.setSeriesIndex(series);
    Precondition Violations (2)
    Row Violation
    1Expression new LegendItem(label,description,toolTipText,urlText,shape,paint,outlineStroke,outlinePaint) cannot be parameterized, because it has dependencies to/from statements that will be extracted
    2Expression new LegendItem(label,description,toolTipText,urlText,line,stroke,paint) cannot be parameterized, because it has dependencies to/from statements that will be extracted