aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/sonar-cpd-plugin
diff options
context:
space:
mode:
authorSimon Brandhof <simon.brandhof@gmail.com>2014-02-20 11:50:41 +0100
committerSimon Brandhof <simon.brandhof@gmail.com>2014-02-20 11:50:50 +0100
commit05e28d46dc4437b74a1baa7a710cddd0453aa9b5 (patch)
tree0df146a65f6428426e7e83b2b983abca1fcff060 /plugins/sonar-cpd-plugin
parent40df046f0c54e77eb3e40d5e9dd5791337a5db89 (diff)
downloadsonarqube-05e28d46dc4437b74a1baa7a710cddd0453aa9b5.tar.gz
sonarqube-05e28d46dc4437b74a1baa7a710cddd0453aa9b5.zip
SONAR-926 fix support of CPD without exclusion patterns
Diffstat (limited to 'plugins/sonar-cpd-plugin')
-rw-r--r--plugins/sonar-cpd-plugin/src/main/java/org/sonar/plugins/cpd/SonarBridgeEngine.java7
-rw-r--r--plugins/sonar-cpd-plugin/src/main/java/org/sonar/plugins/cpd/SonarEngine.java9
2 files changed, 9 insertions, 7 deletions
diff --git a/plugins/sonar-cpd-plugin/src/main/java/org/sonar/plugins/cpd/SonarBridgeEngine.java b/plugins/sonar-cpd-plugin/src/main/java/org/sonar/plugins/cpd/SonarBridgeEngine.java
index 14b073d6711..0ff44946650 100644
--- a/plugins/sonar-cpd-plugin/src/main/java/org/sonar/plugins/cpd/SonarBridgeEngine.java
+++ b/plugins/sonar-cpd-plugin/src/main/java/org/sonar/plugins/cpd/SonarBridgeEngine.java
@@ -22,6 +22,7 @@ package org.sonar.plugins.cpd;
import com.google.common.annotations.VisibleForTesting;
import com.google.common.base.Predicate;
import com.google.common.collect.Iterables;
+import com.google.common.collect.Lists;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.sonar.api.CoreProperties;
@@ -80,12 +81,12 @@ public class SonarBridgeEngine extends CpdEngine {
public void analyse(Project project, String languageKey, SensorContext context) {
String[] cpdExclusions = settings.getStringArray(CoreProperties.CPD_EXCLUSIONS);
logExclusions(cpdExclusions, LOG);
- Iterable<InputFile> sourceFiles = fs.inputFiles(FilePredicates.and(
+ List<InputFile> sourceFiles = Lists.newArrayList(fs.inputFiles(FilePredicates.and(
FilePredicates.hasType(InputFile.Type.MAIN),
FilePredicates.hasLanguage(languageKey),
FilePredicates.doesNotMatchPathPatterns(cpdExclusions)
- ));
- if (!sourceFiles.iterator().hasNext()) {
+ )));
+ if (sourceFiles.isEmpty()) {
return;
}
diff --git a/plugins/sonar-cpd-plugin/src/main/java/org/sonar/plugins/cpd/SonarEngine.java b/plugins/sonar-cpd-plugin/src/main/java/org/sonar/plugins/cpd/SonarEngine.java
index 0b340ce17c4..d463d8cf314 100644
--- a/plugins/sonar-cpd-plugin/src/main/java/org/sonar/plugins/cpd/SonarEngine.java
+++ b/plugins/sonar-cpd-plugin/src/main/java/org/sonar/plugins/cpd/SonarEngine.java
@@ -21,6 +21,7 @@
package org.sonar.plugins.cpd;
import com.google.common.collect.Iterables;
+import com.google.common.collect.Lists;
import org.apache.commons.io.IOUtils;
import org.apache.commons.lang.StringEscapeUtils;
import org.slf4j.Logger;
@@ -93,12 +94,12 @@ public class SonarEngine extends CpdEngine {
public void analyse(Project project, String languageKey, SensorContext context) {
String[] cpdExclusions = settings.getStringArray(CoreProperties.CPD_EXCLUSIONS);
logExclusions(cpdExclusions, LOG);
- Iterable<InputFile> sourceFiles = fs.inputFiles(FilePredicates.and(
+ List<InputFile> sourceFiles = Lists.newArrayList(fs.inputFiles(FilePredicates.and(
FilePredicates.hasType(InputFile.Type.MAIN),
FilePredicates.hasLanguage(languageKey),
FilePredicates.doesNotMatchPathPatterns(cpdExclusions)
- ));
- if (!sourceFiles.iterator().hasNext()) {
+ )));
+ if (sourceFiles.isEmpty()) {
return;
}
SonarDuplicationsIndex index = createIndex(project, sourceFiles);
@@ -135,7 +136,7 @@ public class SonarEngine extends CpdEngine {
return index;
}
- private void detect(SonarDuplicationsIndex index, SensorContext context, Iterable<InputFile> sourceFiles) {
+ private void detect(SonarDuplicationsIndex index, SensorContext context, List<InputFile> sourceFiles) {
ExecutorService executorService = Executors.newSingleThreadExecutor();
try {
for (InputFile inputFile : sourceFiles) {