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