aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJulien HENRY <julien.henry@sonarsource.com>2015-02-10 19:16:29 +0100
committerJulien HENRY <julien.henry@sonarsource.com>2015-02-10 19:17:02 +0100
commitc3270e3f3b496ef85bd8aa63f23c15553cd1714c (patch)
treeca4bbe93a53a818f304483b63c0081b45ee1f799
parentba0f7258c5998f89268b804d27f990d05b4d35ca (diff)
downloadsonarqube-c3270e3f3b496ef85bd8aa63f23c15553cd1714c.tar.gz
sonarqube-c3270e3f3b496ef85bd8aa63f23c15553cd1714c.zip
SONAR-6048 Fix exclusions by absolute path
-rw-r--r--sonar-batch/src/main/java/org/sonar/batch/scan/filesystem/FileIndexer.java2
-rw-r--r--sonar-plugin-api/src/main/java/org/sonar/api/batch/fs/internal/DefaultFileSystem.java4
2 files changed, 6 insertions, 0 deletions
diff --git a/sonar-batch/src/main/java/org/sonar/batch/scan/filesystem/FileIndexer.java b/sonar-batch/src/main/java/org/sonar/batch/scan/filesystem/FileIndexer.java
index d4626209aa2..f2afec0566a 100644
--- a/sonar-batch/src/main/java/org/sonar/batch/scan/filesystem/FileIndexer.java
+++ b/sonar-batch/src/main/java/org/sonar/batch/scan/filesystem/FileIndexer.java
@@ -128,6 +128,8 @@ public class FileIndexer implements BatchComponent {
private void indexFile(InputFileBuilder inputFileBuilder, DefaultModuleFileSystem fileSystem, Progress progress, File sourceFile, InputFile.Type type) {
DeprecatedDefaultInputFile inputFile = inputFileBuilder.create(sourceFile);
+ // Set basedir on input file prior to adding it to the FS since exclusions filters may require the absolute path
+ inputFile.setModuleBaseDir(fileSystem.baseDirPath());
if (inputFile != null && exclusionFilters.accept(inputFile, type)) {
indexFile(inputFileBuilder, fileSystem, progress, inputFile, type);
}
diff --git a/sonar-plugin-api/src/main/java/org/sonar/api/batch/fs/internal/DefaultFileSystem.java b/sonar-plugin-api/src/main/java/org/sonar/api/batch/fs/internal/DefaultFileSystem.java
index 236ecb7d424..898fdad5f0f 100644
--- a/sonar-plugin-api/src/main/java/org/sonar/api/batch/fs/internal/DefaultFileSystem.java
+++ b/sonar-plugin-api/src/main/java/org/sonar/api/batch/fs/internal/DefaultFileSystem.java
@@ -71,6 +71,10 @@ public class DefaultFileSystem implements FileSystem {
this.predicates = new DefaultFilePredicates(baseDir);
}
+ public Path baseDirPath() {
+ return baseDir;
+ }
+
@Override
public File baseDir() {
return baseDir.toFile();