]> source.dussan.org Git - sonarqube.git/commitdiff
SONAR-3060 Use new CPD algorithm
authorEvgeny Mandrikov <mandrikov@gmail.com>
Tue, 6 Dec 2011 23:37:03 +0000 (03:37 +0400)
committerEvgeny Mandrikov <mandrikov@gmail.com>
Wed, 7 Dec 2011 09:42:19 +0000 (13:42 +0400)
plugins/sonar-cpd-plugin/src/main/java/org/sonar/plugins/cpd/SonarEngine.java
sonar-duplications/src/main/java/org/sonar/duplications/detector/suffixtree/SuffixTreeCloneDetectionAlgorithm.java

index a2dfd55cd7a90870812f986c4abf76baebcb60ab..14056dd47c3e1e6c7b722a6338a202413ab228e8 100644 (file)
@@ -33,7 +33,7 @@ import org.sonar.api.utils.SonarException;
 import org.sonar.batch.index.ResourcePersister;
 import org.sonar.duplications.block.Block;
 import org.sonar.duplications.block.BlockChunker;
-import org.sonar.duplications.detector.original.OriginalCloneDetectionAlgorithm;
+import org.sonar.duplications.detector.suffixtree.SuffixTreeCloneDetectionAlgorithm;
 import org.sonar.duplications.index.CloneGroup;
 import org.sonar.duplications.index.CloneIndex;
 import org.sonar.duplications.index.ClonePart;
@@ -185,7 +185,7 @@ public class SonarEngine extends CpdEngine {
     }
 
     public List<CloneGroup> call() {
-      return OriginalCloneDetectionAlgorithm.detect(index, fileBlocks);
+      return SuffixTreeCloneDetectionAlgorithm.detect(index, fileBlocks);
     }
   }
 
index 0bd13a88cbf2362eed00a68fd073039eea4ddf38..004074cfa48a1267c356334769cfec479eb770ff 100644 (file)
@@ -77,6 +77,7 @@ public final class SuffixTreeCloneDetectionAlgorithm {
     }
 
     GeneralisedHashText text = new GeneralisedHashText();
+    // TODO Godin: maybe we can reduce size of tree and so memory consumption by removing non-repeatable blocks
     List<Block> sortedFileBlocks = Lists.newArrayList(fileBlocks);
     Collections.sort(sortedFileBlocks, BLOCK_COMPARATOR);
     text.addAll(sortedFileBlocks);