Skip to content

Commit 02e2845

Browse files
committed
Additional fixes
1 parent 53e3e08 commit 02e2845

File tree

7 files changed

+11
-14
lines changed

7 files changed

+11
-14
lines changed

src/MongoDB.Driver/Core/Operations/AsyncCursor.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -244,7 +244,7 @@ private CursorBatch<TDocument> CreateCursorBatch(BsonDocument result)
244244

245245
using (batch)
246246
{
247-
var documents = CursorBatchDeserializationHelper.DeserializeBatch(batch, _serializer, _messageEncoderSettings);
247+
var documents = CursorBatchDeserializationHelper.DeserializeBatch(batch, _serializer, _messageEncoderSettings, _serializationDomain);
248248
return new CursorBatch<TDocument>(cursorId, postBatchResumeToken, documents);
249249
}
250250
}

src/MongoDB.Driver/Core/Operations/CursorBatchDeserializationHelper.cs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,10 @@ internal static class CursorBatchDeserializationHelper
3434
/// <param name="batch">The batch.</param>
3535
/// <param name="documentSerializer">The document serializer.</param>
3636
/// <param name="messageEncoderSettings">The message encoder settings.</param>
37+
/// <param name="serializationDomain">The serialization domain.</param>
3738
/// <returns>The documents.</returns>
3839
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2202:Do not dispose objects multiple times")]
39-
public static List<TDocument> DeserializeBatch<TDocument>(RawBsonArray batch, IBsonSerializer<TDocument> documentSerializer, MessageEncoderSettings messageEncoderSettings)
40+
public static List<TDocument> DeserializeBatch<TDocument>(RawBsonArray batch, IBsonSerializer<TDocument> documentSerializer, MessageEncoderSettings messageEncoderSettings, IBsonSerializationDomain serializationDomain)
4041
{
4142
var documents = new List<TDocument>();
4243

@@ -46,8 +47,6 @@ public static List<TDocument> DeserializeBatch<TDocument>(RawBsonArray batch, IB
4647
readerSettings.Encoding = messageEncoderSettings.GetOrDefault(MessageEncoderSettingsName.ReadEncoding, Utf8Encodings.Strict);
4748
};
4849

49-
var serializationDomain = messageEncoderSettings.GetOrDefault<IBsonSerializationDomain>(MessageEncoderSettingsName.SerializationDomain, null);
50-
5150
using (var stream = new ByteBufferStream(batch.Slice, ownsBuffer: false))
5251
using (var reader = new BsonBinaryReader(stream, readerSettings))
5352
{

src/MongoDB.Driver/Core/Operations/EstimatedDocumentCountOperation.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,6 @@ public EstimatedDocumentCountOperation(CollectionNamespace collectionNamespace,
4747
{
4848
}
4949

50-
5150
public CollectionNamespace CollectionNamespace => _collectionNamespace;
5251

5352
public BsonValue Comment

src/MongoDB.Driver/Core/Operations/FindAndModifyOperationBase.cs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -176,12 +176,10 @@ private TResult ProcessCommandResult(ConnectionId connectionId, RawBsonDocument
176176
Encoding = _messageEncoderSettings.GetOrDefault<UTF8Encoding>(MessageEncoderSettingsName.ReadEncoding, Utf8Encodings.Strict)
177177
};
178178

179-
var serializationDomain = _messageEncoderSettings.GetOrDefault<IBsonSerializationDomain>(MessageEncoderSettingsName.SerializationDomain, null);
180-
181179
using (var stream = new ByteBufferStream(rawBsonDocument.Slice, ownsBuffer: false))
182180
using (var reader = new BsonBinaryReader(stream, binaryReaderSettings))
183181
{
184-
var context = BsonDeserializationContext.CreateRoot(reader, serializationDomain);
182+
var context = BsonDeserializationContext.CreateRoot(reader, _serializationDomain);
185183
return _resultSerializer.Deserialize(context);
186184
}
187185
}

src/MongoDB.Driver/Core/Operations/FindOperation.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -383,7 +383,7 @@ private CursorBatch<TDocument> CreateFirstCursorBatch(BsonDocument cursorDocumen
383383

384384
using (batch)
385385
{
386-
var documents = CursorBatchDeserializationHelper.DeserializeBatch(batch, _resultSerializer, _messageEncoderSettings);
386+
var documents = CursorBatchDeserializationHelper.DeserializeBatch(batch, _resultSerializer, _messageEncoderSettings, _serializationDomain);
387387
return new CursorBatch<TDocument>(cursorId, documents);
388388
}
389389
}

src/MongoDB.Driver/Core/Operations/RetryableWriteCommandOperationBase.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ public BsonDocument ExecuteAttempt(OperationContext operationContext, RetryableW
117117
{
118118
var args = GetCommandArgs(context, attempt, transactionNumber);
119119
var serializationDomain = args.MessageEncoderSettings.GetOrDefault<IBsonSerializationDomain>(
120-
MessageEncoderSettingsName.SerializationDomain, null);
120+
MessageEncoderSettingsName.SerializationDomain, BsonSerializer.DefaultSerializationDomain);
121121
return context.Channel.Command<BsonDocument>(
122122
operationContext,
123123
context.ChannelSource.Session,

tests/MongoDB.Driver.Tests/Core/Operations/CursorBatchDeserializationHelperTests.cs

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
using FluentAssertions;
1717
using MongoDB.Bson;
1818
using MongoDB.Bson.IO;
19+
using MongoDB.Bson.Serialization;
1920
using MongoDB.Bson.Serialization.Serializers;
2021
using MongoDB.Driver.Core.WireProtocol.Messages.Encoders;
2122
using Xunit;
@@ -34,7 +35,7 @@ public void DeserializeBatch_should_return_expected_result_when_batch_has_one_do
3435
var documentSerializer = BsonDocumentSerializer.Instance;
3536
var messageEncoderSettings = new MessageEncoderSettings();
3637

37-
var result = CursorBatchDeserializationHelper.DeserializeBatch<BsonDocument>(batch, documentSerializer, messageEncoderSettings);
38+
var result = CursorBatchDeserializationHelper.DeserializeBatch<BsonDocument>(batch, documentSerializer, messageEncoderSettings, BsonSerializer.DefaultSerializationDomain);
3839

3940
result.Count.Should().Be(1);
4041
result[0].Should().BeOfType<BsonDocument>();
@@ -51,7 +52,7 @@ public void DeserializeBatch_should_return_expected_result_when_batch_has_two_do
5152
var documentSerializer = BsonDocumentSerializer.Instance;
5253
var messageEncoderSettings = new MessageEncoderSettings();
5354

54-
var result = CursorBatchDeserializationHelper.DeserializeBatch<BsonDocument>(batch, documentSerializer, messageEncoderSettings);
55+
var result = CursorBatchDeserializationHelper.DeserializeBatch<BsonDocument>(batch, documentSerializer, messageEncoderSettings, BsonSerializer.DefaultSerializationDomain);
5556

5657
result.Count.Should().Be(2);
5758
result[0].Should().BeOfType<BsonDocument>();
@@ -70,7 +71,7 @@ public void DeserializeBatch_should_return_expected_result_when_batch_is_empty()
7071
var documentSerializer = BsonDocumentSerializer.Instance;
7172
var messageEncoderSettings = new MessageEncoderSettings();
7273

73-
var result = CursorBatchDeserializationHelper.DeserializeBatch<BsonDocument>(batch, documentSerializer, messageEncoderSettings);
74+
var result = CursorBatchDeserializationHelper.DeserializeBatch<BsonDocument>(batch, documentSerializer, messageEncoderSettings, BsonSerializer.DefaultSerializationDomain);
7475

7576
result.Count.Should().Be(0);
7677
}
@@ -86,7 +87,7 @@ public void DeserializeBatch_should_return_expected_result_when_GuidRepresentati
8687
var documentSerializer = BsonDocumentSerializer.Instance;
8788
var messageEncoderSettings = new MessageEncoderSettings { { "GuidRepresentation", GuidRepresentation.Standard } };
8889

89-
var result = CursorBatchDeserializationHelper.DeserializeBatch<BsonDocument>(batch, documentSerializer, messageEncoderSettings);
90+
var result = CursorBatchDeserializationHelper.DeserializeBatch<BsonDocument>(batch, documentSerializer, messageEncoderSettings, BsonSerializer.DefaultSerializationDomain);
9091

9192
result.Count.Should().Be(1);
9293
result[0].Should().BeOfType<BsonDocument>();

0 commit comments

Comments
 (0)