use of org.sonar.api.internal.ApiVersion in project sonarqube by SonarSource.
the class GlobalContainer method addBootstrapComponents.
private void addBootstrapComponents() {
Version apiVersion = ApiVersion.load(System2.INSTANCE);
add(// plugins
ScannerPluginRepository.class, PluginLoader.class, PluginClassloaderFactory.class, ScannerPluginJarExploder.class, ScannerPluginPredicate.class, ExtensionInstaller.class, new SonarQubeVersion(apiVersion), SonarRuntimeImpl.forSonarQube(apiVersion, SonarQubeSide.SCANNER), StoragesManager.class, GlobalSettings.class, new ScannerWsClientProvider(), DefaultServer.class, new GlobalTempFolderProvider(), DefaultHttpDownloader.class, UriReader.class, new FileCacheProvider(), System2.INSTANCE, new MetricsRepositoryProvider(), UuidFactoryImpl.INSTANCE);
addIfMissing(ScannerPluginInstaller.class, PluginInstaller.class);
addIfMissing(DefaultSettingsLoader.class, SettingsLoader.class);
addIfMissing(DefaultMetricsRepositoryLoader.class, MetricsRepositoryLoader.class);
}
use of org.sonar.api.internal.ApiVersion in project sonarqube by SonarSource.
the class PlatformLevel1 method configureLevel.
@Override
public void configureLevel() {
add(platform, properties);
addExtraRootComponents();
Version apiVersion = ApiVersion.load(System2.INSTANCE);
add(new SonarQubeVersion(apiVersion), SonarRuntimeImpl.forSonarQube(apiVersion, SonarQubeSide.SERVER), ThreadLocalSettings.class, LogServerVersion.class, ProcessCommandWrapperImpl.class, RestartFlagHolderImpl.class, UuidFactoryImpl.INSTANCE, UrlSettings.class, EmbeddedDatabaseFactory.class, LogbackHelper.class, WebServerProcessLogging.class, DefaultDatabase.class, DatabaseChecker.class, // to avoid having two SqlSessionFactory instances
org.sonar.core.persistence.MyBatis.class, PurgeProfiler.class, ServerFileSystemImpl.class, SemaphoresImpl.class, TempFolderCleaner.class, new TempFolderProvider(), System2.INSTANCE, // user session
ThreadLocalUserSession.class, // DB
DbClient.class, DaoModule.class, // Elasticsearch
EsSearchModule.class, // rules/qprofiles
RuleIndex.class, ActiveRuleIndex.class, // issues
IssueIndex.class, new OkHttpClientProvider(), // Classes kept for backward compatibility of plugins/libs (like sonar-license) that are directly calling classes from the core
org.sonar.core.properties.PropertiesDao.class);
addAll(CorePropertyDefinitions.all());
// cluster
add(ClusterImpl.class);
}
Aggregations