]> source.dussan.org Git - sonarqube.git/commitdiff
Remove hack introduced by SONAR-5765 for compatibility with useles code tracker
authorJulien HENRY <julien.henry@sonarsource.com>
Wed, 13 May 2015 13:28:53 +0000 (15:28 +0200)
committerJulien HENRY <julien.henry@sonarsource.com>
Wed, 13 May 2015 13:33:51 +0000 (15:33 +0200)
sonar-batch/src/main/java/org/sonar/batch/deprecated/decorator/DefaultDecoratorContext.java
sonar-batch/src/main/java/org/sonar/batch/duplication/DuplicationUtils.java [deleted file]

index 47d75f4434d16ab2440ddfcf8b7bc26a58705e45..5b9d6497fa34c5ccad52c4cb8412856ce8f9832f 100644 (file)
@@ -24,19 +24,21 @@ import com.google.common.collect.ListMultimap;
 import com.google.common.collect.Lists;
 import org.sonar.api.batch.DecoratorContext;
 import org.sonar.api.batch.SonarIndex;
-import org.sonar.api.batch.sensor.duplication.internal.DefaultDuplication;
 import org.sonar.api.design.Dependency;
-import org.sonar.api.measures.*;
+import org.sonar.api.measures.Measure;
+import org.sonar.api.measures.MeasuresFilter;
+import org.sonar.api.measures.MeasuresFilters;
+import org.sonar.api.measures.MeasuresFilters.MetricFilter;
+import org.sonar.api.measures.Metric;
+import org.sonar.api.measures.MetricFinder;
 import org.sonar.api.resources.Project;
 import org.sonar.api.resources.Resource;
 import org.sonar.api.rules.Violation;
 import org.sonar.api.utils.SonarException;
 import org.sonar.batch.duplication.DuplicationCache;
-import org.sonar.batch.duplication.DuplicationUtils;
 import org.sonar.batch.scan.measure.MeasureCache;
 import org.sonar.batch.sensor.coverage.CoverageExclusions;
 
-import java.util.Arrays;
 import java.util.Collection;
 import java.util.List;
 import java.util.Set;
@@ -106,25 +108,17 @@ public class DefaultDecoratorContext implements DecoratorContext {
   public <M> M getMeasures(MeasuresFilter<M> filter) {
     Collection<Measure> unfiltered;
     if (filter instanceof MeasuresFilters.MetricFilter) {
-      unfiltered = getMeasuresOfASingleMetric(filter);
+      // optimization
+      unfiltered = getMeasuresOfASingleMetric((MetricFilter<M>) filter);
     } else {
       unfiltered = measuresByMetric.values();
     }
     return filter.filter(unfiltered);
   }
 
-  private <M> Collection<Measure> getMeasuresOfASingleMetric(MeasuresFilter<M> filter) {
-    Collection<Measure> unfiltered;
+  private <M> Collection<Measure> getMeasuresOfASingleMetric(MeasuresFilters.MetricFilter<M> filter) {
     String metricKey = ((MeasuresFilters.MetricFilter<M>) filter).filterOnMetricKey();
-    if (CoreMetrics.DUPLICATIONS_DATA_KEY.equals(metricKey)) {
-      // Hack for SONAR-5765
-      Iterable<DefaultDuplication> group = duplicationCache.byComponent(resource.getEffectiveKey());
-      unfiltered = Arrays.asList(new Measure(CoreMetrics.DUPLICATIONS_DATA, DuplicationUtils.toXml(group)));
-    } else {
-      // optimization
-      unfiltered = measuresByMetric.get(metricKey);
-    }
-    return unfiltered;
+    return measuresByMetric.get(metricKey);
   }
 
   @Override
diff --git a/sonar-batch/src/main/java/org/sonar/batch/duplication/DuplicationUtils.java b/sonar-batch/src/main/java/org/sonar/batch/duplication/DuplicationUtils.java
deleted file mode 100644 (file)
index 5f2b95e..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * SonarQube, open source software quality management tool.
- * Copyright (C) 2008-2014 SonarSource
- * mailto:contact AT sonarsource DOT com
- *
- * SonarQube is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 3 of the License, or (at your option) any later version.
- *
- * SonarQube is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
- */
-package org.sonar.batch.duplication;
-
-import org.apache.commons.lang.StringEscapeUtils;
-import org.sonar.api.batch.sensor.duplication.Duplication;
-import org.sonar.api.batch.sensor.duplication.internal.DefaultDuplication;
-
-public class DuplicationUtils {
-
-  private DuplicationUtils() {
-    // Utility class
-  }
-
-  public static String toXml(Iterable<DefaultDuplication> duplications) {
-    StringBuilder xml = new StringBuilder();
-    xml.append("<duplications>");
-    for (Duplication duplication : duplications) {
-      xml.append("<g>");
-      toXml(xml, duplication.originBlock());
-      for (Duplication.Block part : duplication.duplicates()) {
-        toXml(xml, part);
-      }
-      xml.append("</g>");
-    }
-    xml.append("</duplications>");
-    return xml.toString();
-  }
-
-  private static void toXml(StringBuilder xml, Duplication.Block part) {
-    xml.append("<b s=\"").append(part.startLine())
-      .append("\" l=\"").append(part.length())
-      .append("\" r=\"").append(StringEscapeUtils.escapeXml(part.resourceKey()))
-      .append("\"/>");
-  }
-}