public ClusteringModule(DiscoveryServiceFactory discoveryServiceFactory, MemberId myself, PlatformModule platformModule, File clusterStateDirectory, DatabaseLayout databaseLayout) { LifeSupport life = platformModule.Life; Config config = platformModule.Config; LogProvider logProvider = platformModule.Logging.InternalLogProvider; LogProvider userLogProvider = platformModule.Logging.UserLogProvider; Dependencies dependencies = platformModule.Dependencies; Monitors monitors = platformModule.Monitors; FileSystemAbstraction fileSystem = platformModule.FileSystem; RemoteMembersResolver remoteMembersResolver = chooseResolver(config, platformModule.Logging); _topologyService = discoveryServiceFactory.CoreTopologyService(config, myself, platformModule.JobScheduler, logProvider, userLogProvider, remoteMembersResolver, ResolveStrategy(config, logProvider), monitors); life.Add(_topologyService); dependencies.SatisfyDependency(_topologyService); // for tests CoreBootstrapper coreBootstrapper = new CoreBootstrapper(databaseLayout, platformModule.PageCache, fileSystem, config, logProvider, platformModule.Monitors); SimpleStorage <ClusterId> clusterIdStorage = new SimpleFileStorage <ClusterId>(fileSystem, clusterStateDirectory, CLUSTER_ID_NAME, new ClusterId.Marshal(), logProvider); SimpleStorage <DatabaseName> dbNameStorage = new SimpleFileStorage <DatabaseName>(fileSystem, clusterStateDirectory, DB_NAME, new DatabaseName.Marshal(), logProvider); string dbName = config.Get(CausalClusteringSettings.database); int minimumCoreHosts = config.Get(CausalClusteringSettings.minimum_core_cluster_size_at_formation); Duration clusterBindingTimeout = config.Get(CausalClusteringSettings.cluster_binding_timeout); _clusterBinder = new ClusterBinder(clusterIdStorage, dbNameStorage, _topologyService, Clocks.systemClock(), () => sleep(100), clusterBindingTimeout, coreBootstrapper, dbName, minimumCoreHosts, platformModule.Monitors); }
/// <param name="discoveryServiceFactory"> </param> /// <param name="dependencies"> </param> /// <param name="config"> </param> /// <param name="logProvider"> </param> protected internal virtual void ConfigureDiscoveryService(DiscoveryServiceFactory discoveryServiceFactory, Dependencies dependencies, Config config, LogProvider logProvider) { SslPolicyLoader sslPolicyFactory = ( SslPolicyLoader )dependencies.SatisfyDependency(SslPolicyLoader.create(config, logProvider)); SslPolicy clusterSslPolicy = sslPolicyFactory.GetPolicy(( string )config.Get(CausalClusteringSettings.ssl_policy)); if (discoveryServiceFactory is SecureHazelcastDiscoveryServiceFactory) { (( SecureHazelcastDiscoveryServiceFactory )discoveryServiceFactory).SslPolicy = clusterSslPolicy; } }
/// <param name="storeDir"> </param> /// <param name="config"> </param> /// <param name="dependencies"> </param> /// <param name="discoveryServiceFactory"> </param> /// <param name="memberId"> </param> public OpenEnterpriseReadReplicaGraphDatabase(File storeDir, Config config, GraphDatabaseFacadeFactory.Dependencies dependencies, DiscoveryServiceFactory discoveryServiceFactory, MemberId memberId) { System.Func <PlatformModule, AbstractEditionModule> factory = platformModule => new OpenEnterpriseReadReplicaEditionModule(platformModule, discoveryServiceFactory, memberId); (new GraphDatabaseFacadeFactory(DatabaseInfo.READ_REPLICA, factory)).initFacade(storeDir, config, dependencies, this); }
/// /// <param name="platformModule"> </param> /// <param name="discoveryServiceFactory"> </param> /// <param name="clusterStateDirectory"> </param> /// <param name="identityModule"> </param> /// <param name="dependencies"> </param> /// <param name="databaseLayout"> /// @return </param> protected internal virtual ClusteringModule GetClusteringModule(PlatformModule platformModule, DiscoveryServiceFactory discoveryServiceFactory, ClusterStateDirectory clusterStateDirectory, IdentityModule identityModule, Dependencies dependencies, DatabaseLayout databaseLayout) { SslPolicyLoader sslPolicyFactory = ( SslPolicyLoader )dependencies.SatisfyDependency(SslPolicyLoader.create(this.Config, this.LogProvider)); SslPolicy sslPolicy = sslPolicyFactory.GetPolicy(( string )this.Config.get(CausalClusteringSettings.SslPolicy)); if (discoveryServiceFactory is SecureHazelcastDiscoveryServiceFactory) { (( SecureHazelcastDiscoveryServiceFactory )discoveryServiceFactory).SslPolicy = sslPolicy; } return(new ClusteringModule(discoveryServiceFactory, identityModule.Myself(), platformModule, clusterStateDirectory.Get(), databaseLayout)); }
/// <param name="platformModule"> </param> /// <param name="discoveryServiceFactory"> </param> internal OpenEnterpriseCoreEditionModule(PlatformModule platformModule, DiscoveryServiceFactory discoveryServiceFactory) : base(platformModule, discoveryServiceFactory) { }
public ReadReplicaGraphDatabase(File storeDir, Config config, GraphDatabaseFacadeFactory.Dependencies dependencies, DiscoveryServiceFactory discoveryServiceFactory) : this(storeDir, config, dependencies, discoveryServiceFactory, new MemberId(System.Guid.randomUUID())) { }
/// <param name="storeDir"> </param> /// <param name="config"> </param> /// <param name="dependencies"> </param> /// <param name="discoveryServiceFactory"> </param> public OpenEnterpriseCoreGraphDatabase(File storeDir, Config config, GraphDatabaseFacadeFactory.Dependencies dependencies, DiscoveryServiceFactory discoveryServiceFactory) { System.Func <PlatformModule, AbstractEditionModule> factory = platformModule => new OpenEnterpriseCoreEditionModule(platformModule, discoveryServiceFactory); (new GraphDatabaseFacadeFactory(DatabaseInfo.CORE, factory)).initFacade(storeDir, config, dependencies, this); }
/// <param name="platformModule"> </param> /// <param name="discoveryServiceFactory"> </param> /// <param name="myself"> </param> internal OpenEnterpriseReadReplicaEditionModule(PlatformModule platformModule, DiscoveryServiceFactory discoveryServiceFactory, MemberId myself) : base(platformModule, discoveryServiceFactory, myself) { }