public async Task ClusterOneTimeSetUp() { // create remote client and cluster RcClient = await ConnectToRemoteControllerAsync().CfAwait(); RcCluster = await RcClient.CreateClusterAsync(RcClusterConfiguration).CfAwait(); }
protected async ValueTask <IHazelcastClient> StartClientAsync(string serverXml, bool enableSsl, bool?validateCertificateChain, bool?validateCertificateName, bool?checkCertificateRevocation, string certSubjectName, byte[] clientCertificate, string certPassword, bool failFast = false) { RcCluster = await RcClient.CreateClusterAsync(serverXml); RcMember = await RcClient.StartMemberAsync(RcCluster); var options = HazelcastOptions.Build(); options.Networking.Addresses.Clear(); //options.Networking.Addresses.Add("localhost:5701"); options.Networking.Addresses.Add("127.0.0.1:5701"); ((IClusterOptions)options).ClusterName = RcCluster.Id; options.LoggerFactory.Creator = () => LoggerFactory; var sslOptions = options.Networking.Ssl; sslOptions.Enabled = enableSsl; sslOptions.ValidateCertificateChain = validateCertificateChain ?? sslOptions.ValidateCertificateChain; sslOptions.ValidateCertificateName = validateCertificateName ?? sslOptions.ValidateCertificateName; sslOptions.CertificateName = certSubjectName ?? sslOptions.CertificateName; sslOptions.CheckCertificateRevocation = checkCertificateRevocation ?? sslOptions.CheckCertificateRevocation; if (failFast) { // default value is 20s but if we know we are going to fail, no point trying again and again options.Networking.ConnectionRetry.ClusterConnectionTimeoutMilliseconds = 2_000; } if (enableSsl && clientCertificate != null) { var certFilePath = CreateTmpFile(clientCertificate); sslOptions.CertificatePath = certFilePath; if (certPassword != null) { sslOptions.CertificatePassword = certPassword; } } return(await HazelcastClientFactory.StartNewClientAsync(options)); }