populateLevel4(this.level4, props);
configureFromModules(this.level4);
- ServerExtensionInstaller extensionInstaller = this.level4.getComponentByType(ServerExtensionInstaller.class);
- extensionInstaller.installExtensions(this.level4);
CoreExtensionsInstaller coreExtensionsInstaller = this.level4.getComponentByType(CECoreExtensionsInstaller.class);
coreExtensionsInstaller.install(this.level4, t -> true);
+ ServerExtensionInstaller extensionInstaller = this.level4.getComponentByType(ServerExtensionInstaller.class);
+ extensionInstaller.installExtensions(this.level4);
this.level4.startComponents();
PlatformEditionProvider editionProvider = this.level4.getComponentByType(PlatformEditionProvider.class);
Loggers.get(ComputeEngineContainerImpl.class)
@Override
public PlatformLevel start() {
- ServerExtensionInstaller extensionInstaller = get(ServerExtensionInstaller.class);
- CoreExtensionsInstaller coreExtensionsInstaller = get(WebCoreExtensionsInstaller.class);
ComponentContainer container = getContainer();
- extensionInstaller.installExtensions(container);
+ CoreExtensionsInstaller coreExtensionsInstaller = get(WebCoreExtensionsInstaller.class);
coreExtensionsInstaller.install(container, t -> true);
+ ServerExtensionInstaller extensionInstaller = get(ServerExtensionInstaller.class);
+ extensionInstaller.installExtensions(container);
super.start();
--- /dev/null
+package org.sonar.core.extension;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+@Documented
+@Retention(RetentionPolicy.RUNTIME)
+@Target(ElementType.TYPE)
+public @interface PlatformLevel {
+ int value() default 4;
+}
--- /dev/null
+package org.sonar.core.extension;
+
+public class PlatformLevelPredicates {
+}
}
private void addExtensions() {
- ExtensionInstaller pluginInstaller = getComponentByType(ExtensionInstaller.class);
- pluginInstaller.install(this, e -> isScannerSide(e) && isInstantiationStrategy(e, PER_PROJECT));
CoreExtensionsInstaller coreExtensionsInstaller = getComponentByType(CoreExtensionsInstaller.class);
coreExtensionsInstaller.install(this, t -> isInstantiationStrategy(t, PER_PROJECT));
+ ExtensionInstaller pluginInstaller = getComponentByType(ExtensionInstaller.class);
+ pluginInstaller.install(this, e -> isScannerSide(e) && isInstantiationStrategy(e, PER_PROJECT));
}
@Override
}
private void addBatchExtensions() {
- getComponentByType(ExtensionInstaller.class)
- .install(this, getBatchPluginExtensionsFilter());
getComponentByType(CoreExtensionsInstaller.class)
.install(this, extension -> isInstantiationStrategy(extension, PER_BATCH));
+ getComponentByType(ExtensionInstaller.class)
+ .install(this, getBatchPluginExtensionsFilter());
}
@VisibleForTesting
}
private void addTaskExtensions() {
- getComponentByType(ExtensionInstaller.class)
- .install(this, extension -> isScannerSide(extension) && isInstantiationStrategy(extension, PER_TASK));
getComponentByType(CoreExtensionsInstaller.class)
.install(this, t -> isInstantiationStrategy(t, PER_TASK));
+ getComponentByType(ExtensionInstaller.class)
+ .install(this, extension -> isScannerSide(extension) && isInstantiationStrategy(extension, PER_TASK));
}
@Override