private async Task PublishUnpublishedEventsAsync(IEnumerable <VersionedEvent> unpublishedEvents) { if (unpublishedEvents.Any()) { await _eventStream.OnNextBatchAsync(unpublishedEvents); await _eventStore.DeletePublishedAsync(_key, unpublishedEvents.Select(x => x.Version)); } }
private async Task SendMessages(params string[] messages) { logger.Info(">>>Sending message{0} '{1}'...", messages.Length > 1 ? "s" : "", string.Join(",", messages)); if (messages.Length == 1) { await _stream.OnNextAsync(messages[0]); return; } await _stream.OnNextBatchAsync(messages); }
private async Task SendMessages(params string[] messages) { GetLogger().Info("[{0}] \t Sending message {1} '{2}'...", this.GetPrimaryKey(), messages.Length > 1 ? "s" : "", string.Join(",", messages)); if (messages.Length == 1) { await _stream.OnNextAsync(messages[0]); return; } await _stream.OnNextBatchAsync(messages); }
private Task Fire(int batchSize, [CallerMemberName] string caller = null) { // Creating a batch List <int> batch = new List <int>(batchSize); for (int i = 0; i < batchSize; i++) { batch.Add(_numProducedItems); _numProducedItems++; } Logger.Info("{0} (item={1})", caller, _numProducedItems); return(_producer.OnNextBatchAsync(batch)); }
public async Task BatchSendBatchConsume() { const int BatchesSent = 3; const int ItemsPerBatch = 10; const int ExpectedConsumed = BatchesSent * ItemsPerBatch; Guid streamGuid = Guid.NewGuid(); IStreamProvider provider = this.fixture.Client.GetStreamProvider(StreamBatchingTestConst.ProviderName); IAsyncStream <string> stream = provider.GetStream <string>(streamGuid, StreamBatchingTestConst.BatchingNameSpace); for (int i = 0; i < BatchesSent; i++) { await stream.OnNextBatchAsync(Enumerable.Range(i, ItemsPerBatch).Select(v => v.ToString())); } var consumer = this.fixture.GrainFactory.GetGrain <IStreamBatchingTestConsumerGrain>(streamGuid); await TestingUtils.WaitUntilAsync(lastTry => CheckCounters(consumer, ExpectedConsumed, ItemsPerBatch, lastTry), Timeout); }
private Task Fire(Tuple <int, T> batchValueTuple, [CallerMemberName] string caller = null) { var batchSize = batchValueTuple.Item1; var item = batchValueTuple.Item2; // Creating a batch List <T> batch = new List <T>(batchSize); for (int i = 0; i < batchSize; i++) { batch.Add(item); _numProducedItems++; } Logger.Info("{0} (item={1}, serialNum={2})", caller, item.ToString(), _numProducedItems); _lastProducedItem = item; return(_producer.OnNextBatchAsync(batch)); }
public Task OnNextBatchAsync(IEnumerable <T> batch, StreamSequenceToken token = null) => stream.OnNextBatchAsync(batch, token);
public virtual Task SendBatchPackets(ArraySegment <IPacket <TData> > packets) => asyncStream.OnNextBatchAsync(packets);
public virtual Task OnNextBatchAsync(IEnumerable <object> batch, StreamSequenceToken token = null) { return(endpoint.OnNextBatchAsync(batch, token)); }
public Task OnNextBatchAsync(IEnumerable <T> batch, StreamSequenceToken token = null) { // ReSharper disable PossibleMultipleEnumeration return(Task.WhenAll(stream.OnNextBatchAsync(batch, token), batchFan(batch))); // ReSharper restore PossibleMultipleEnumeration }