]> source.dussan.org Git - sonarqube.git/commitdiff
SONAR-926 Try to index filesystem earlier to solve issues with some initializers
authorJulien HENRY <julien.henry@sonarsource.com>
Sat, 25 Jan 2014 00:38:48 +0000 (01:38 +0100)
committerJulien HENRY <julien.henry@sonarsource.com>
Sat, 25 Jan 2014 00:38:48 +0000 (01:38 +0100)
sonar-batch/src/main/java/org/sonar/batch/phases/InitializersExecutor.java
sonar-batch/src/main/java/org/sonar/batch/phases/PhaseExecutor.java

index f0cb20333778c518948d2e4c94927c38b674da96..e57f5908a9e4a68f636e56719c5e57572b48aafe 100644 (file)
@@ -71,8 +71,6 @@ public class InitializersExecutor {
       eventBus.fireEvent(new InitializerExecutionEvent(initializer, false));
     }
 
-    fs.index();
-
     eventBus.fireEvent(new InitializersPhaseEvent(Lists.newArrayList(initializers), false));
   }
 
index e4f6f8d92aa0400e056aa55d3aee16a45f1408ba..60aa6c8b8ea2529250ae67ad757e753c3ab6fbb3 100644 (file)
@@ -29,6 +29,7 @@ import org.sonar.batch.events.EventBus;
 import org.sonar.batch.index.DefaultIndex;
 import org.sonar.batch.index.PersistenceManager;
 import org.sonar.batch.index.ScanPersister;
+import org.sonar.batch.scan.filesystem.DefaultModuleFileSystem;
 import org.sonar.batch.scan.filesystem.FileSystemLogger;
 import org.sonar.batch.scan.maven.MavenPhaseExecutor;
 import org.sonar.batch.scan.maven.MavenPluginsConfigurator;
@@ -62,13 +63,14 @@ public final class PhaseExecutor {
   private ScanPersister[] persisters;
   private FileSystemLogger fsLogger;
   private final JsonReport jsonReport;
+  private DefaultModuleFileSystem fs;
 
   public PhaseExecutor(Phases phases, DecoratorsExecutor decoratorsExecutor, MavenPhaseExecutor mavenPhaseExecutor,
     MavenPluginsConfigurator mavenPluginsConfigurator, InitializersExecutor initializersExecutor,
     PostJobsExecutor postJobsExecutor, SensorsExecutor sensorsExecutor,
     PersistenceManager persistenceManager, SensorContext sensorContext, DefaultIndex index,
     EventBus eventBus, UpdateStatusJob updateStatusJob, ProjectInitializer pi,
-    ScanPersister[] persisters, FileSystemLogger fsLogger, JsonReport jsonReport) {
+    ScanPersister[] persisters, FileSystemLogger fsLogger, JsonReport jsonReport, DefaultModuleFileSystem fs) {
     this.phases = phases;
     this.decoratorsExecutor = decoratorsExecutor;
     this.mavenPhaseExecutor = mavenPhaseExecutor;
@@ -85,15 +87,16 @@ public final class PhaseExecutor {
     this.persisters = persisters;
     this.fsLogger = fsLogger;
     this.jsonReport = jsonReport;
+    this.fs = fs;
   }
 
   public PhaseExecutor(Phases phases, DecoratorsExecutor decoratorsExecutor, MavenPhaseExecutor mavenPhaseExecutor,
     MavenPluginsConfigurator mavenPluginsConfigurator, InitializersExecutor initializersExecutor,
     PostJobsExecutor postJobsExecutor, SensorsExecutor sensorsExecutor,
     PersistenceManager persistenceManager, SensorContext sensorContext, DefaultIndex index,
-    EventBus eventBus, ProjectInitializer pi, ScanPersister[] persisters, FileSystemLogger fsLogger, JsonReport jsonReport) {
+    EventBus eventBus, ProjectInitializer pi, ScanPersister[] persisters, FileSystemLogger fsLogger, JsonReport jsonReport, DefaultModuleFileSystem fs) {
     this(phases, decoratorsExecutor, mavenPhaseExecutor, mavenPluginsConfigurator, initializersExecutor, postJobsExecutor,
-      sensorsExecutor, persistenceManager, sensorContext, index, eventBus, null, pi, persisters, fsLogger, jsonReport);
+      sensorsExecutor, persistenceManager, sensorContext, index, eventBus, null, pi, persisters, fsLogger, jsonReport, fs);
   }
 
   /**
@@ -167,8 +170,9 @@ public final class PhaseExecutor {
   private void executeMavenPhase(Project module) {
     if (phases.isEnabled(Phases.Phase.MAVEN)) {
       eventBus.fireEvent(new MavenPhaseEvent(true));
-      mavenPluginsConfigurator.execute(module);
       mavenPhaseExecutor.execute(module);
+      fs.index();
+      mavenPluginsConfigurator.execute(module);
       eventBus.fireEvent(new MavenPhaseEvent(false));
     }
   }