final Supplier<DatabaseHealth> databaseHealthSupplier = dependencies.provideDependency( DatabaseHealth.class );
watcherService = createFileSystemWatcherService( fileSystem, storeDir, logging,
platformModule.jobScheduler, config, fileWatcherFileNameFilter() );
dependencies.satisfyDependencies( watcherService );
LogFiles logFiles = buildLocalDatabaseLogFiles( platformModule, fileSystem, storeDir );
LocalDatabase localDatabase = new LocalDatabase( platformModule.storeDir,
new StoreFiles( fileSystem, platformModule.pageCache ),
ClusteringModule clusteringModule = getClusteringModule( platformModule, discoveryServiceFactory,
clusterStateDirectory, identityModule, dependencies );
PipelineWrapper clientPipelineWrapper = pipelineWrapperFactory().forClient( config, dependencies, logProvider, CausalClusteringSettings.ssl_policy );
PipelineWrapper serverPipelineWrapper = pipelineWrapperFactory().forServer( config, dependencies, logProvider, CausalClusteringSettings.ssl_policy );
PipelineWrapper backupServerPipelineWrapper = pipelineWrapperFactory().forServer( config, dependencies, logProvider, OnlineBackupSettings.ssl_policy );
final MessageLogger<MemberId> messageLogger = createMessageLogger( config, life, identityModule.myself() );
createIdComponents( platformModule, dependencies, coreStateMachinesModule.idGeneratorFactory );
dependencies.satisfyDependency( idGeneratorFactory );
dependencies.satisfyDependency( idController );
defaultStrategy.inject( topologyService, config, logProvider, identityModule.myself() );
UpstreamDatabaseStrategySelector catchupStrategySelector =
createUpstreamDatabaseStrategySelector( identityModule.myself(), config, logProvider, topologyService, defaultStrategy );
editionInvariants( platformModule, dependencies, config, logging, life );