Esempio n. 1
0
        public static ClientHolderState CreateActiveClientHolderState(ZooKeeperClientSettings settings)
        {
            var connectionString  = settings.ConnectionStringProvider();
            var connectionWatcher = new ConnectionWatcher(_ => {});

            var client = new Lazy <ZooKeeperNetExClient>(
                () =>
            {
                using (ExecutionContext.SuppressFlow())
                {
                    return(new ZooKeeperNetExClient(
                               connectionString,
                               settings.ToInnerConnectionTimeout(),
                               connectionWatcher,
                               settings.CanBeReadOnly));
                }
            },
                LazyThreadSafetyMode.ExecutionAndPublication);

            return(ClientHolderState.CreateActive(client, connectionWatcher, ConnectionState.Connected, connectionString, settings));
        }