public void MarkLastProcessedEvent(string pipelineName, IProcessingElement processingElement) { _cursorCalculator.Append(processingElement); if (_cursorCalculator.SequenceLength >= _threshold) { _wrappedStore.MarkLastProcessedEvent(pipelineName, processingElement); _cursorCalculator.ClearSequence(); } }
private void PostProcessElements(object cancellationToken) { try { var eventStream = _postProcessingQueue.GetConsumingEnumerable((CancellationToken)cancellationToken); foreach (var evnt in eventStream) { _elementStore.MarkLastProcessedEvent(_name, evnt); } } catch (OperationCanceledException) { Debug.WriteLine("PostProcessElements operation cancelled."); } }
public void MarkLastProcessedEvent(string pipelineName, IProcessingElement processingElement) { _persistentStore.MarkLastProcessedEvent(pipelineName, processingElement); }