示例#1
0
        public void Setup()
        {
            _remoteController = CreateRemoteController();
            _cluster          = CreateCluster(_remoteController);

            StartMember(_remoteController, _cluster);
        }
示例#2
0
 protected void ShutdownCluster(RemoteController.Client remoteController, Cluster cluster)
 {
     while (!StopCluster(remoteController, cluster))
     {
         Thread.Sleep(1000);
     }
 }
示例#3
0
        public void SetupCluster()
        {
            RemoteController = CreateRemoteController();
            var cluster = CreateCluster(RemoteController);

            RemoteController.startMember(cluster.Id);
            Client = CreateClient();
        }
示例#4
0
 public void Setup()
 {
     _initialMembershipListener = new InitialMembershipListener();
     _remoteController          = CreateRemoteController();
     _cluster = CreateCluster(_remoteController);
     StartMember(_remoteController, _cluster);
     _client = CreateClient();
 }
示例#5
0
        protected virtual Cluster CreateCluster(RemoteController.Client remoteController)
        {
            _logger.Info("Creating cluster");
            var cluster = remoteController.createCluster(null, Resources.hazelcast);

            _logger.Info("Created cluster");
            return(cluster);
        }
示例#6
0
        public void Setup(bool ssl, bool validateCertificateChain, bool validateCertificateName, string certificateName)
        {
            RemoteController = CreateRemoteController();
            var cluster = CreateCluster(RemoteController, ssl?Resources.hazelcast_ssl:Resources.hazelcast);

            RemoteController.startMember(cluster.Id);
            Client = HazelcastClient.NewHazelcastClient(ConfigureClient(ssl, validateCertificateChain, validateCertificateName, certificateName));
        }
示例#7
0
        protected virtual Cluster CreateCluster(RemoteController.Client remoteController, string xmlconfig)
        {
            _logger.Info("Creating cluster using custom config...");
            var cluster = remoteController.createCluster(null, xmlconfig);

            _logger.Info("Created cluster");
            return(cluster);
        }
        public void Setup()
        {
            _remoteController = CreateRemoteController();
            _cluster          = CreateCluster(_remoteController);

            StartMember(_remoteController, _cluster);
            _client = CreateClient();
            _client.GetMap <object, object>("default").Get(new object());
        }
        private void Setup(bool ssl, bool validateCertificateChain, bool validateCertificateName, string certificateName)
        {
            RemoteController = CreateRemoteController();
            var cluster = CreateCluster(RemoteController, ssl?Resources.hazelcast_ssl:Resources.hazelcast);

            RemoteController.startMember(cluster.Id);
            var clientConfig = ConfigureClient(ssl, validateCertificateChain, validateCertificateName, certificateName);

            clientConfig.GetGroupConfig().SetName(cluster.Id).SetPassword(cluster.Id);
            Client = HazelcastClient.NewHazelcastClient(clientConfig);
        }
示例#10
0
        protected void StopMemberAndWait(IHazelcastInstance client, RemoteController.Client remoteController,
                                         Cluster cluster, Member member)
        {
            var resetEvent = new ManualResetEventSlim();
            var regId      = client.GetCluster().AddMembershipListener(new MembershipListener
            {
                OnMemberRemoved = @event => resetEvent.Set()
            });

            StopMember(remoteController, cluster, member);
            Assert.IsTrue(resetEvent.Wait(120 * 1000), "The member did not get removed in 120 seconds");
            Assert.IsTrue(client.GetCluster().RemoveMembershipListener(regId));
        }
示例#11
0
        protected void Setup(string serverXml, bool isSslEnabled, bool?validateCertificateChain,
                             bool?validateCertificateName, bool?checkCertificateRevocation, string certSubjectName, byte[] clientCertificate,
                             string certPassword)
        {
            RemoteController = CreateRemoteController();
            var cluster = CreateCluster(RemoteController, serverXml);

            RemoteController.startMember(cluster.Id);
            var clientConfig = new ClientConfig();

            clientConfig.GetNetworkConfig().AddAddress("localhost:5701");
            clientConfig.GetNetworkConfig().SetSSLConfig(CreateSslConfig(isSslEnabled, validateCertificateChain,
                                                                         validateCertificateName, checkCertificateRevocation, certSubjectName, clientCertificate, certPassword));
            clientConfig.GetGroupConfig().SetName(cluster.Id).SetPassword(cluster.Id);
            Client = HazelcastClient.NewHazelcastClient(clientConfig);
        }
示例#12
0
        protected Member StartMemberAndWait(IHazelcastInstance client, RemoteController.Client remoteController,
                                            Cluster cluster, int expectedSize)
        {
            var resetEvent = new ManualResetEventSlim();
            var regId      = client.GetCluster().AddMembershipListener(new MembershipListener
            {
                OnMemberAdded = @event => resetEvent.Set()
            });
            var member = StartMember(remoteController, cluster);

            Assert.IsTrue(resetEvent.Wait(120 * 1000), "The member did not get added in 120 seconds");
            Assert.IsTrue(client.GetCluster().RemoveMembershipListener(regId));

            // make sure partitions are updated
            TestSupport.AssertTrueEventually(
                () => { Assert.AreEqual(expectedSize, GetUniquePartitionOwnerCount(client)); },
                60, "The partition list did not contain " + expectedSize + " partitions.");

            return(member);
        }
示例#13
0
 protected virtual void StopMember(RemoteController.Client remoteController, Cluster cluster, Member member)
 {
     _logger.Info("Shutting down  member " + member.Uuid);
     remoteController.shutdownMember(cluster.Id, member.Uuid);
 }
示例#14
0
 protected virtual void StopCluster(RemoteController.Client remoteController, Cluster cluster)
 {
     remoteController.shutdownCluster(cluster.Id);
 }
示例#15
0
 protected virtual Member StartMember(RemoteController.Client remoteController, Cluster cluster)
 {
     _logger.Info("Starting new member");
     return(remoteController.startMember(cluster.Id));
 }
示例#16
0
 protected virtual void ResumeMember(RemoteController.Client remoteController, Cluster cluster, Member member)
 {
     remoteController.resumeMember(cluster.Id, member.Uuid);
 }
示例#17
0
 protected void StopRemoteController(RemoteController.Client client)
 {
     client.exit();
     client.InputProtocol.Transport.Close();
 }
示例#18
0
 public void Setup()
 {
     _remoteController = CreateRemoteController();
     _cluster          = CreateCluster(_remoteController, GetServerConfig());
 }
示例#19
0
 protected virtual void SuspendMember(RemoteController.Client remoteController, Cluster cluster, Member member)
 {
     remoteController.suspendMember(cluster.Id, member.Uuid);
 }
示例#20
0
 protected virtual bool StopCluster(RemoteController.Client remoteController, Cluster cluster)
 {
     return(remoteController.shutdownCluster(cluster.Id));
 }