private void AddSubscriber(Guid publishWithCorrelationId, IProjectionSubscription subscription) { _logger.Trace("The '{0}' projection subscribed to the '{1}' heading distribution point", publishWithCorrelationId, _distributionPointId); _headSubscribers.Add(publishWithCorrelationId, subscription); if (_headDistributionPointPaused) { _headDistributionPointPaused = false; _headDistributionPoint.Resume(); } }
public void Start(Guid distributionPointId, EventDistributionPoint eventDistributionPoint) { if (_started) { throw new InvalidOperationException("Already started"); } _distributionPointId = distributionPointId; _headDistributionPoint = eventDistributionPoint; //Guid.Empty means head distribution point _headDistributionPoint.Resume(); _started = true; }