Class SizeLimitingBatchableSourceSerializer<TItem>
A serializer for BatchableSource that serializes as much of the BatchableSource as fits in the max batch count and size.
public class SizeLimitingBatchableSourceSerializer<TItem> : SerializerBase<BatchableSource<TItem>>, IBsonSerializer<BatchableSource<TItem>>, IBsonSerializer
Type Parameters
TItem
The type of the items.
- Inheritance
-
SerializerBase<BatchableSource<TItem>>SizeLimitingBatchableSourceSerializer<TItem>
- Implements
-
IBsonSerializer<BatchableSource<TItem>>
- Inherited Members
Constructors
SizeLimitingBatchableSourceSerializer(IBsonSerializer<TItem>, IElementNameValidator, int, int, int)
Initializes a new instance of the SizeLimitingBatchableSourceSerializer<TItem> class.
public SizeLimitingBatchableSourceSerializer(IBsonSerializer<TItem> itemSerializer, IElementNameValidator itemElementNameValidator, int maxBatchCount, int maxItemSize, int maxBatchSize)
Parameters
itemSerializer
IBsonSerializer<TItem>The item serializer.
itemElementNameValidator
IElementNameValidatorThe item element name validator.
maxBatchCount
intThe maximum batch count.
maxItemSize
intThe maximum size of a serialized item.
maxBatchSize
intThe maximum size of the batch.
Methods
Serialize(BsonSerializationContext, BsonSerializationArgs, BatchableSource<TItem>)
Serializes a value.
public override void Serialize(BsonSerializationContext context, BsonSerializationArgs args, BatchableSource<TItem> value)
Parameters
context
BsonSerializationContextThe serialization context.
args
BsonSerializationArgsThe serialization args.
value
BatchableSource<TItem>The value.