/* Copyright 2010-present MongoDB Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ using System; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; using MongoDB.Bson; using MongoDB.Driver.Core.Clusters; namespace MongoDB.Driver { /// /// Base class for implementors of . /// public abstract class MongoClientBase : IMongoClient { /// public abstract ICluster Cluster { get; } /// public abstract MongoClientSettings Settings { get; } /// public virtual void DropDatabase(string name, CancellationToken cancellationToken = default(CancellationToken)) { throw new NotImplementedException(); } /// public virtual void DropDatabase(IClientSessionHandle session, string name, CancellationToken cancellationToken = default(CancellationToken)) { throw new NotImplementedException(); } /// public abstract Task DropDatabaseAsync(string name, CancellationToken cancellationToken = default(CancellationToken)); /// public virtual Task DropDatabaseAsync(IClientSessionHandle session, string name, CancellationToken cancellationToken = default(CancellationToken)) { throw new NotImplementedException(); } /// public abstract IMongoDatabase GetDatabase(string name, MongoDatabaseSettings settings = null); /// public virtual IAsyncCursor ListDatabaseNames( CancellationToken cancellationToken = default(CancellationToken)) { throw new NotImplementedException(); } /// public virtual IAsyncCursor ListDatabaseNames( IClientSessionHandle session, CancellationToken cancellationToken = default(CancellationToken)) { throw new NotImplementedException(); } /// public virtual Task> ListDatabaseNamesAsync( CancellationToken cancellationToken = default(CancellationToken)) { throw new NotImplementedException(); } /// public virtual Task> ListDatabaseNamesAsync( IClientSessionHandle session, CancellationToken cancellationToken = default(CancellationToken)) { throw new NotImplementedException(); } /// public virtual IAsyncCursor ListDatabases(CancellationToken cancellationToken = default(CancellationToken)) { throw new NotImplementedException(); } /// public virtual IAsyncCursor ListDatabases( ListDatabasesOptions options, CancellationToken cancellationToken = default(CancellationToken)) { throw new NotImplementedException(); } /// public virtual IAsyncCursor ListDatabases( IClientSessionHandle session, CancellationToken cancellationToken = default(CancellationToken)) { throw new NotImplementedException(); } /// public virtual IAsyncCursor ListDatabases( IClientSessionHandle session, ListDatabasesOptions options, CancellationToken cancellationToken = default(CancellationToken)) { throw new NotImplementedException(); } /// public abstract Task> ListDatabasesAsync(CancellationToken cancellationToken = default(CancellationToken)); /// public virtual Task> ListDatabasesAsync( ListDatabasesOptions options, CancellationToken cancellationToken = default(CancellationToken)) { throw new NotImplementedException(); } /// public virtual Task> ListDatabasesAsync(IClientSessionHandle session, CancellationToken cancellationToken = default(CancellationToken)) { throw new NotImplementedException(); } /// public virtual Task> ListDatabasesAsync( IClientSessionHandle session, ListDatabasesOptions options, CancellationToken cancellationToken = default(CancellationToken)) { throw new NotImplementedException(); } /// public virtual IClientSessionHandle StartSession(ClientSessionOptions options = null, CancellationToken cancellationToken = default(CancellationToken)) { throw new NotImplementedException(); } /// public virtual Task StartSessionAsync(ClientSessionOptions options = null, CancellationToken cancellationToken = default(CancellationToken)) { throw new NotImplementedException(); } /// public virtual IAsyncCursor Watch( PipelineDefinition, TResult> pipeline, ChangeStreamOptions options = null, CancellationToken cancellationToken = default(CancellationToken)) { throw new NotImplementedException(); // implemented by subclasses } /// public virtual IAsyncCursor Watch( IClientSessionHandle session, PipelineDefinition, TResult> pipeline, ChangeStreamOptions options = null, CancellationToken cancellationToken = default(CancellationToken)) { throw new NotImplementedException(); // implemented by subclasses } /// public virtual Task> WatchAsync( PipelineDefinition, TResult> pipeline, ChangeStreamOptions options = null, CancellationToken cancellationToken = default(CancellationToken)) { throw new NotImplementedException(); // implemented by subclasses } /// public virtual Task> WatchAsync( IClientSessionHandle session, PipelineDefinition, TResult> pipeline, ChangeStreamOptions options = null, CancellationToken cancellationToken = default(CancellationToken)) { throw new NotImplementedException(); // implemented by subclasses } /// public virtual IMongoClient WithReadConcern(ReadConcern readConcern) { throw new NotImplementedException(); } /// public virtual IMongoClient WithReadPreference(ReadPreference readPreference) { throw new NotImplementedException(); } /// public virtual IMongoClient WithWriteConcern(WriteConcern writeConcern) { throw new NotImplementedException(); } } }