Exemple #1
0
        public void constructor_should_initialize_instance()
        {
            var server         = new Mock <IServer>().Object;
            var readPreference = ReadPreference.Primary;
            var session        = new Mock <ICoreSessionHandle>().Object;

            var result = new SingleServerReadBinding(server, readPreference, session);

            result._disposed().Should().BeFalse();
            result.ReadPreference.Should().BeSameAs(readPreference);
            result._server().Should().BeSameAs(server);
            result.Session.Should().BeSameAs(session);
        }
Exemple #2
0
        public static IServer _server(this SingleServerReadBinding obj)
        {
            var fieldInfo = typeof(SingleServerReadBinding).GetField("_server", BindingFlags.NonPublic | BindingFlags.Instance);

            return((IServer)fieldInfo.GetValue(obj));
        }
Exemple #3
0
        public static bool _disposed(this SingleServerReadBinding obj)
        {
            var fieldInfo = typeof(SingleServerReadBinding).GetField("_disposed", BindingFlags.NonPublic | BindingFlags.Instance);

            return((bool)fieldInfo.GetValue(obj));
        }
 private async Task<IReadBindingHandle> GetSingleServerReadBindingAsync(CancellationToken cancellationToken)
 {
     var readPreference = _options.ReadPreference ?? _database.Settings.ReadPreference;
     var selector = new ReadPreferenceServerSelector(readPreference);
     var server = await _cluster.SelectServerAsync(selector, cancellationToken).ConfigureAwait(false);
     var binding = new SingleServerReadBinding(server, readPreference);
     return new ReadBindingHandle(binding);
 }
Exemple #5
0
        /// <summary>
        /// Checks whether the server is alive (throws an exception if not).
        /// </summary>
        public void Ping()
        {
            var messageEncoderSettings = GetMessageEncoderSettings();
            var operation = new PingOperation(messageEncoderSettings);

            var server = GetServer();
            using (var binding = new SingleServerReadBinding(server, ReadPreference.PrimaryPreferred))
            {
                operation.Execute(binding, CancellationToken.None);
            }
        }
 private IReadBindingHandle GetSingleServerReadBinding(CancellationToken cancellationToken)
 {
     var readPreference = _options.ReadPreference ?? _database.Settings.ReadPreference;
     var selector = new ReadPreferenceServerSelector(readPreference);
     var server = _cluster.SelectServer(selector, cancellationToken);
     var binding = new SingleServerReadBinding(server, readPreference);
     return new ReadBindingHandle(binding);
 }