diff options
author | Sébastien Lesaint <sebastien.lesaint@sonarsource.com> | 2015-05-13 13:43:35 +0200 |
---|---|---|
committer | Sébastien Lesaint <sebastien.lesaint@sonarsource.com> | 2015-05-27 12:11:37 +0200 |
commit | 28d2d525ccd55cf49a24c5b73639c932bf223ae3 (patch) | |
tree | dd1b5d3f3a6f8aa9c908cff13ed8a7db025f1e01 /server | |
parent | f5704c2461e720c2ef8c6f514d27b7caaed09a65 (diff) | |
download | sonarqube-28d2d525ccd55cf49a24c5b73639c932bf223ae3.tar.gz sonarqube-28d2d525ccd55cf49a24c5b73639c932bf223ae3.zip |
add Module concept to component management
Diffstat (limited to 'server')
7 files changed, 20 insertions, 17 deletions
diff --git a/server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevel.java b/server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevel.java index dbb30dfdd84..28aad7223cc 100644 --- a/server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevel.java +++ b/server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevel.java @@ -20,9 +20,11 @@ package org.sonar.server.platform.platformlevel; import java.util.Collection; +import java.util.List; import javax.annotation.Nonnull; import javax.annotation.Nullable; import org.sonar.core.platform.ComponentContainer; +import org.sonar.core.component.Module; import static com.google.common.base.Preconditions.checkNotNull; @@ -62,7 +64,18 @@ public abstract class PlatformLevel { return parent.createChild(); } - public abstract PlatformLevel configure(); + public PlatformLevel configure() { + configureLevel(); + + List<Module> modules = container.getComponentsByType(Module.class); + for (Module module : modules) { + module.configure(container); + } + + return this; + } + + protected abstract void configureLevel(); /** * Intended to be override by subclasses if needed diff --git a/server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevel1.java b/server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevel1.java index 4fa1e41d2aa..1752c5d9a79 100644 --- a/server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevel1.java +++ b/server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevel1.java @@ -90,7 +90,7 @@ public class PlatformLevel1 extends PlatformLevel { } @Override - public PlatformLevel configure() { + public void configureLevel() { add(platform, properties); addExtraRootComponents(); add( @@ -166,8 +166,6 @@ public class PlatformLevel1 extends PlatformLevel { addAll(CorePropertyDefinitions.all()); addAll(MigrationSteps.CLASSES); addAll(DaoUtils.getDaoClasses()); - - return this; } private void addExtraRootComponents() { diff --git a/server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevel2.java b/server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevel2.java index ccedb2a3961..062e796de67 100644 --- a/server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevel2.java +++ b/server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevel2.java @@ -41,7 +41,7 @@ public class PlatformLevel2 extends PlatformLevel { } @Override - public PlatformLevel configure() { + protected void configureLevel() { add( DefaultServerUpgradeStatus.class, DatabaseMigrator.class, @@ -66,6 +66,5 @@ public class PlatformLevel2 extends PlatformLevel { // DB migration PlatformDatabaseMigrationExecutorServiceImpl.class, PlatformDatabaseMigration.class); - return this; } } diff --git a/server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevel3.java b/server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevel3.java index 52ec6287938..7df65744ac5 100644 --- a/server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevel3.java +++ b/server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevel3.java @@ -34,7 +34,7 @@ public class PlatformLevel3 extends PlatformLevel { } @Override - public PlatformLevel configure() { + protected void configureLevel() { add( PersistentSettings.class, DefaultDatabaseConnector.class, @@ -44,6 +44,5 @@ public class PlatformLevel3 extends PlatformLevel { DefaultHttpDownloader.class, UriReader.class, ServerIdGenerator.class); - return this; } } diff --git a/server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevel4.java b/server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevel4.java index 22c6112ca22..5fee29e8167 100644 --- a/server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevel4.java +++ b/server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevel4.java @@ -301,7 +301,7 @@ public class PlatformLevel4 extends PlatformLevel { } @Override - public PlatformLevel configure() { + protected void configureLevel() { add( PluginDownloader.class, ChartFactory.class, @@ -692,8 +692,6 @@ public class PlatformLevel4 extends PlatformLevel { NavigationWs.class); addAll(level4AddedComponents); - - return this; } @Override diff --git a/server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevelSafeMode.java b/server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevelSafeMode.java index 1fa81165fd4..ac863cb139a 100644 --- a/server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevelSafeMode.java +++ b/server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevelSafeMode.java @@ -33,7 +33,7 @@ public class PlatformLevelSafeMode extends PlatformLevel { } @Override - public PlatformLevel configure() { + protected void configureLevel() { add( // DB access required by DatabaseSessionFilter wired into ROR DefaultDatabaseConnector.class, @@ -49,7 +49,5 @@ public class PlatformLevelSafeMode extends PlatformLevel { // WS engine WebServiceEngine.class); - - return this; } } diff --git a/server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevelStartup.java b/server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevelStartup.java index acfe928ddc7..9629f23d03f 100644 --- a/server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevelStartup.java +++ b/server/sonar-server/src/main/java/org/sonar/server/platform/platformlevel/PlatformLevelStartup.java @@ -48,7 +48,7 @@ public class PlatformLevelStartup extends PlatformLevel { } @Override - public PlatformLevel configure() { + protected void configureLevel() { add( IndexSynchronizer.class, RegisterMetrics.class, @@ -68,8 +68,6 @@ public class PlatformLevelStartup extends PlatformLevel { ReportQueueCleaner.class, RegisterIssueFilters.class, RenameIssueWidgets.class); - - return this; } @Override |