@@ -116,7 +116,6 @@ internal MongoClient(IOperationExecutor operationExecutor, MongoClientSettings s
116116
117117 // internal properties
118118 internal IAutoEncryptionLibMongoCryptController LibMongoCryptController => ThrowIfDisposed ( _libMongoCryptController ) ;
119- internal IOperationExecutor OperationExecutor => ThrowIfDisposed ( _operationExecutor ) ;
120119
121120 // internal methods
122121 internal void ConfigureAutoEncryptionMessageEncoderSettings ( MessageEncoderSettings messageEncoderSettings )
@@ -136,29 +135,29 @@ internal void ConfigureAutoEncryptionMessageEncoderSettings(MessageEncoderSettin
136135 // public methods
137136 /// <inheritdoc/>
138137 public ClientBulkWriteResult BulkWrite ( IReadOnlyList < BulkWriteModel > models , ClientBulkWriteOptions options = null , CancellationToken cancellationToken = default )
139- => OperationExecutor . ExecuteWriteOperation < ClientBulkWriteResult > (
138+ => _operationExecutor . ExecuteWriteOperation < ClientBulkWriteResult > (
140139 CreateClientBulkWriteOperation ( models , options ) ,
141140 _writeOperationOptions ,
142141 cancellationToken : cancellationToken ) ;
143142
144143 /// <inheritdoc/>
145144 public ClientBulkWriteResult BulkWrite ( IClientSessionHandle session , IReadOnlyList < BulkWriteModel > models , ClientBulkWriteOptions options = null , CancellationToken cancellationToken = default )
146- => OperationExecutor . ExecuteWriteOperation < ClientBulkWriteResult > (
145+ => _operationExecutor . ExecuteWriteOperation < ClientBulkWriteResult > (
147146 CreateClientBulkWriteOperation ( models , options ) ,
148147 _writeOperationOptions ,
149148 Ensure . IsNotNull ( session , nameof ( session ) ) ,
150149 cancellationToken ) ;
151150
152151 /// <inheritdoc/>
153152 public Task < ClientBulkWriteResult > BulkWriteAsync ( IReadOnlyList < BulkWriteModel > models , ClientBulkWriteOptions options = null , CancellationToken cancellationToken = default )
154- => OperationExecutor . ExecuteWriteOperationAsync < ClientBulkWriteResult > (
153+ => _operationExecutor . ExecuteWriteOperationAsync < ClientBulkWriteResult > (
155154 CreateClientBulkWriteOperation ( models , options ) ,
156155 _writeOperationOptions ,
157156 cancellationToken : cancellationToken ) ;
158157
159158 /// <inheritdoc/>
160159 public Task < ClientBulkWriteResult > BulkWriteAsync ( IClientSessionHandle session , IReadOnlyList < BulkWriteModel > models , ClientBulkWriteOptions options = null , CancellationToken cancellationToken = default )
161- => OperationExecutor . ExecuteWriteOperationAsync < ClientBulkWriteResult > (
160+ => _operationExecutor . ExecuteWriteOperationAsync < ClientBulkWriteResult > (
162161 CreateClientBulkWriteOperation ( models , options ) ,
163162 _writeOperationOptions ,
164163 Ensure . IsNotNull ( session , nameof ( session ) ) ,
@@ -183,6 +182,7 @@ public void Dispose(bool disposing)
183182 {
184183 _logger ? . LogDebug ( _cluster . ClusterId , "MongoClient disposing" ) ;
185184
185+ _operationExecutor . Dispose ( ) ;
186186 _settings . ClusterSource . Return ( _cluster ) ;
187187 _libMongoCryptController ? . Dispose ( ) ;
188188
@@ -195,29 +195,29 @@ public void Dispose(bool disposing)
195195
196196 /// <inheritdoc/>
197197 public void DropDatabase ( string name , CancellationToken cancellationToken = default )
198- => OperationExecutor . ExecuteWriteOperation (
198+ => _operationExecutor . ExecuteWriteOperation (
199199 CreateDropDatabaseOperation ( name ) ,
200200 _writeOperationOptions ,
201201 cancellationToken : cancellationToken ) ;
202202
203203 /// <inheritdoc/>
204204 public void DropDatabase ( IClientSessionHandle session , string name , CancellationToken cancellationToken = default )
205- => OperationExecutor . ExecuteWriteOperation (
205+ => _operationExecutor . ExecuteWriteOperation (
206206 CreateDropDatabaseOperation ( name ) ,
207207 _writeOperationOptions ,
208208 Ensure . IsNotNull ( session , nameof ( session ) ) ,
209209 cancellationToken ) ;
210210
211211 /// <inheritdoc/>
212212 public Task DropDatabaseAsync ( string name , CancellationToken cancellationToken = default )
213- => OperationExecutor . ExecuteWriteOperationAsync (
213+ => _operationExecutor . ExecuteWriteOperationAsync (
214214 CreateDropDatabaseOperation ( name ) ,
215215 _writeOperationOptions ,
216216 cancellationToken : cancellationToken ) ;
217217
218218 /// <inheritdoc/>
219219 public Task DropDatabaseAsync ( IClientSessionHandle session , string name , CancellationToken cancellationToken = default )
220- => OperationExecutor . ExecuteWriteOperationAsync (
220+ => _operationExecutor . ExecuteWriteOperationAsync (
221221 CreateDropDatabaseOperation ( name ) ,
222222 _writeOperationOptions ,
223223 Ensure . IsNotNull ( session , nameof ( session ) ) ,
@@ -301,7 +301,7 @@ public async Task<IAsyncCursor<string>> ListDatabaseNamesAsync(
301301
302302 /// <inheritdoc/>
303303 public IAsyncCursor < BsonDocument > ListDatabases ( CancellationToken cancellationToken )
304- => OperationExecutor . ExecuteReadOperation (
304+ => _operationExecutor . ExecuteReadOperation (
305305 CreateListDatabaseOperation ( null ) ,
306306 _readOperationOptions ,
307307 cancellationToken : cancellationToken ) ;
@@ -310,7 +310,7 @@ public IAsyncCursor<BsonDocument> ListDatabases(CancellationToken cancellationTo
310310 public IAsyncCursor < BsonDocument > ListDatabases (
311311 ListDatabasesOptions options ,
312312 CancellationToken cancellationToken = default )
313- => OperationExecutor . ExecuteReadOperation (
313+ => _operationExecutor . ExecuteReadOperation (
314314 CreateListDatabaseOperation ( options ) ,
315315 _readOperationOptions ,
316316 cancellationToken : cancellationToken ) ;
@@ -319,7 +319,7 @@ public IAsyncCursor<BsonDocument> ListDatabases(
319319 public IAsyncCursor < BsonDocument > ListDatabases (
320320 IClientSessionHandle session ,
321321 CancellationToken cancellationToken = default )
322- => OperationExecutor . ExecuteReadOperation (
322+ => _operationExecutor . ExecuteReadOperation (
323323 CreateListDatabaseOperation ( null ) ,
324324 _readOperationOptions ,
325325 Ensure . IsNotNull ( session , nameof ( session ) ) ,
@@ -330,15 +330,15 @@ public IAsyncCursor<BsonDocument> ListDatabases(
330330 IClientSessionHandle session ,
331331 ListDatabasesOptions options ,
332332 CancellationToken cancellationToken = default )
333- => OperationExecutor . ExecuteReadOperation (
333+ => _operationExecutor . ExecuteReadOperation (
334334 CreateListDatabaseOperation ( options ) ,
335335 _readOperationOptions ,
336336 Ensure . IsNotNull ( session , nameof ( session ) ) ,
337337 cancellationToken ) ;
338338
339339 /// <inheritdoc/>
340340 public Task < IAsyncCursor < BsonDocument > > ListDatabasesAsync ( CancellationToken cancellationToken = default )
341- => OperationExecutor . ExecuteReadOperationAsync (
341+ => _operationExecutor . ExecuteReadOperationAsync (
342342 CreateListDatabaseOperation ( null ) ,
343343 _readOperationOptions ,
344344 cancellationToken : cancellationToken ) ;
@@ -347,7 +347,7 @@ public Task<IAsyncCursor<BsonDocument>> ListDatabasesAsync(CancellationToken can
347347 public Task < IAsyncCursor < BsonDocument > > ListDatabasesAsync (
348348 ListDatabasesOptions options ,
349349 CancellationToken cancellationToken = default )
350- => OperationExecutor . ExecuteReadOperationAsync (
350+ => _operationExecutor . ExecuteReadOperationAsync (
351351 CreateListDatabaseOperation ( options ) ,
352352 _readOperationOptions ,
353353 cancellationToken : cancellationToken ) ;
@@ -356,7 +356,7 @@ public Task<IAsyncCursor<BsonDocument>> ListDatabasesAsync(
356356 public Task < IAsyncCursor < BsonDocument > > ListDatabasesAsync (
357357 IClientSessionHandle session ,
358358 CancellationToken cancellationToken = default )
359- => OperationExecutor . ExecuteReadOperationAsync (
359+ => _operationExecutor . ExecuteReadOperationAsync (
360360 CreateListDatabaseOperation ( null ) ,
361361 _readOperationOptions ,
362362 Ensure . IsNotNull ( session , nameof ( session ) ) ,
@@ -367,7 +367,7 @@ public Task<IAsyncCursor<BsonDocument>> ListDatabasesAsync(
367367 IClientSessionHandle session ,
368368 ListDatabasesOptions options ,
369369 CancellationToken cancellationToken = default )
370- => OperationExecutor . ExecuteReadOperationAsync (
370+ => _operationExecutor . ExecuteReadOperationAsync (
371371 CreateListDatabaseOperation ( options ) ,
372372 _readOperationOptions ,
373373 Ensure . IsNotNull ( session , nameof ( session ) ) ,
@@ -394,7 +394,7 @@ public IChangeStreamCursor<TResult> Watch<TResult>(
394394 PipelineDefinition < ChangeStreamDocument < BsonDocument > , TResult > pipeline ,
395395 ChangeStreamOptions options = null ,
396396 CancellationToken cancellationToken = default )
397- => OperationExecutor . ExecuteReadOperation (
397+ => _operationExecutor . ExecuteReadOperation (
398398 CreateChangeStreamOperation ( pipeline , options ) ,
399399 _readOperationOptions ,
400400 cancellationToken : cancellationToken ) ;
@@ -405,7 +405,7 @@ public IChangeStreamCursor<TResult> Watch<TResult>(
405405 PipelineDefinition < ChangeStreamDocument < BsonDocument > , TResult > pipeline ,
406406 ChangeStreamOptions options = null ,
407407 CancellationToken cancellationToken = default )
408- => OperationExecutor . ExecuteReadOperation (
408+ => _operationExecutor . ExecuteReadOperation (
409409 CreateChangeStreamOperation ( pipeline , options ) ,
410410 _readOperationOptions ,
411411 Ensure . IsNotNull ( session , nameof ( session ) ) ,
@@ -416,7 +416,7 @@ public Task<IChangeStreamCursor<TResult>> WatchAsync<TResult>(
416416 PipelineDefinition < ChangeStreamDocument < BsonDocument > , TResult > pipeline ,
417417 ChangeStreamOptions options = null ,
418418 CancellationToken cancellationToken = default )
419- => OperationExecutor . ExecuteReadOperationAsync (
419+ => _operationExecutor . ExecuteReadOperationAsync (
420420 CreateChangeStreamOperation ( pipeline , options ) ,
421421 _readOperationOptions ,
422422 cancellationToken : cancellationToken ) ;
@@ -427,7 +427,7 @@ public Task<IChangeStreamCursor<TResult>> WatchAsync<TResult>(
427427 PipelineDefinition < ChangeStreamDocument < BsonDocument > , TResult > pipeline ,
428428 ChangeStreamOptions options = null ,
429429 CancellationToken cancellationToken = default )
430- => OperationExecutor . ExecuteReadOperationAsync (
430+ => _operationExecutor . ExecuteReadOperationAsync (
431431 CreateChangeStreamOperation ( pipeline , options ) ,
432432 _readOperationOptions ,
433433 Ensure . IsNotNull ( session , nameof ( session ) ) ,
@@ -442,7 +442,7 @@ public IMongoClient WithReadConcern(ReadConcern readConcern)
442442
443443 var newSettings = Settings . Clone ( ) ;
444444 newSettings . ReadConcern = readConcern ;
445- return new MongoClient ( _operationExecutor , newSettings ) ;
445+ return new MongoClient ( newSettings ) ;
446446 }
447447
448448 /// <inheritdoc/>
@@ -454,7 +454,7 @@ public IMongoClient WithReadPreference(ReadPreference readPreference)
454454
455455 var newSettings = Settings . Clone ( ) ;
456456 newSettings . ReadPreference = readPreference ;
457- return new MongoClient ( _operationExecutor , newSettings ) ;
457+ return new MongoClient ( newSettings ) ;
458458 }
459459
460460 /// <inheritdoc/>
@@ -466,7 +466,7 @@ public IMongoClient WithWriteConcern(WriteConcern writeConcern)
466466
467467 var newSettings = Settings . Clone ( ) ;
468468 newSettings . WriteConcern = writeConcern ;
469- return new MongoClient ( _operationExecutor , newSettings ) ;
469+ return new MongoClient ( newSettings ) ;
470470 }
471471
472472 // private methods
0 commit comments