/// <summary> /// Initializes a new instance of the <see cref="EventDataBatch" /> class. /// </summary> /// /// <param name="batchSizeBytes">The size, in bytes, that the batch should report; this is a static value and will not mutate as events are added.</param> /// <param name="batchEventStore">A list to which events will be added when <see cref="EventDataBatch.TryAdd" /> calls are successful.</param> /// <param name="batchOptions">The set of options to consider when creating this batch.</param> /// <param name="tryAddCallback">A function that will be invoked when <see cref="EventDataBatch.TryAdd" /> is called; the return of this callback represents the result of <see cref="EventDataBatch.TryAdd" />. If not provided, all events will be accepted into the batch.</param> /// /// <returns>The <see cref="EventDataBatch" /> instance that was created.</returns> /// public static EventDataBatch EventDataBatch(long batchSizeBytes, IList <EventData> batchEventStore, CreateBatchOptions batchOptions = default, Func <EventData, bool> tryAddCallback = default) { tryAddCallback ??= _ => true; batchOptions ??= new CreateBatchOptions(); batchOptions.MaximumSizeInBytes ??= long.MaxValue; var transportBatch = new ListTransportBatch(batchOptions.MaximumSizeInBytes.Value, batchSizeBytes, batchEventStore, tryAddCallback); return(new EventDataBatch(transportBatch, "Mock", "Mock", batchOptions)); }
/// <summary> /// Initializes a new instance of the <see cref="Azure.Messaging.ServiceBus.ServiceBusMessageBatch" /> class. /// </summary> /// /// <param name="batchSizeBytes">The size, in bytes, that the batch should report; this is a static value and will not mutate as messages are added.</param> /// <param name="batchMessageStore">A list to which messages will be added when <see cref="Azure.Messaging.ServiceBus.ServiceBusMessageBatch.TryAddMessage" /> calls are successful.</param> /// <param name="batchOptions">The set of options to consider when creating this batch.</param> /// <param name="tryAddCallback"> A function that will be invoked when <see cref="Azure.Messaging.ServiceBus.ServiceBusMessageBatch.TryAddMessage" /> is called; /// the return of this callback represents the result of <see cref="Azure.Messaging.ServiceBus.ServiceBusMessageBatch.TryAddMessage" />. /// If not provided, all events will be accepted into the batch.</param> /// /// <returns>The <see cref="Azure.Messaging.ServiceBus.ServiceBusMessageBatch" /> instance that was created.</returns> /// public static ServiceBusMessageBatch ServiceBusMessageBatch(long batchSizeBytes, IList <ServiceBusMessage> batchMessageStore, CreateMessageBatchOptions batchOptions = default, Func <ServiceBusMessage, bool> tryAddCallback = default) { tryAddCallback ??= _ => true; batchOptions ??= new CreateMessageBatchOptions(); batchOptions.MaxSizeInBytes ??= long.MaxValue; var transportBatch = new ListTransportBatch(batchOptions.MaxSizeInBytes.Value, batchSizeBytes, batchMessageStore, tryAddCallback); return(new ServiceBusMessageBatch(transportBatch, new EntityScopeFactory("mock", "mock"))); }