]> source.dussan.org Git - sonarqube.git/commitdiff
SONAR-926 Improve FileLineContextFactory to support InputFile
authorJulien HENRY <julien.henry@sonarsource.com>
Wed, 29 Jan 2014 08:09:50 +0000 (09:09 +0100)
committerJulien HENRY <julien.henry@sonarsource.com>
Wed, 29 Jan 2014 15:01:07 +0000 (16:01 +0100)
sonar-batch/src/main/java/org/sonar/batch/DefaultFileLinesContextFactory.java

index bc05a5d6004437cbec7dfcf78edd1492d4bfb5a9..438c698abdac031e3d984ed72bba5b2b420ae1e9 100644 (file)
@@ -25,7 +25,6 @@ import org.sonar.api.measures.FileLinesContextFactory;
 import org.sonar.api.resources.File;
 import org.sonar.api.resources.Java;
 import org.sonar.api.resources.JavaFile;
-import org.sonar.api.resources.Languages;
 import org.sonar.api.resources.Resource;
 import org.sonar.api.scan.filesystem.InputFile;
 import org.sonar.api.scan.filesystem.internal.DefaultInputFile;
@@ -33,11 +32,9 @@ import org.sonar.api.scan.filesystem.internal.DefaultInputFile;
 public class DefaultFileLinesContextFactory implements FileLinesContextFactory {
 
   private final SonarIndex index;
-  private Languages languages;
 
-  public DefaultFileLinesContextFactory(SonarIndex index, Languages languages) {
+  public DefaultFileLinesContextFactory(SonarIndex index) {
     this.index = index;
-    this.languages = languages;
   }
 
   @Override
@@ -56,8 +53,10 @@ public class DefaultFileLinesContextFactory implements FileLinesContextFactory {
     if (Java.KEY.equals(languageKey)) {
       sonarFile = JavaFile.create(inputFile.path(), inputFile.attribute(DefaultInputFile.ATTRIBUTE_SOURCE_RELATIVE_PATH), unitTest);
     } else {
-      sonarFile = File.create(inputFile.path(), inputFile.attribute(DefaultInputFile.ATTRIBUTE_SOURCE_RELATIVE_PATH), languages.get(languageKey), unitTest);
+      sonarFile = File.create(inputFile.path(), inputFile.attribute(DefaultInputFile.ATTRIBUTE_SOURCE_RELATIVE_PATH), null, unitTest);
     }
+    // Reload resource from index
+    sonarFile = index.getResource(sonarFile);
     return new DefaultFileLinesContext(index, sonarFile);
   }