public void BeginTracking(IConsumeFromEda messageBridge, Action <Exception> onUnhandledException) { _onUnhandledException = onUnhandledException; if (_consumers.ContainsKey(messageBridge.GetType())) { throw new InvalidOperationException( $"Already tracking events for the message type {messageBridge.GetType()}"); } _consumers.Add(messageBridge.GetType(), RegisterConsumer(messageBridge)); }
private IPersistentConsumer RegisterConsumer(IConsumeFromEda consumer) { return(consumer.Subscribe(_bus, SubscriberId, exception => _onUnhandledException(exception))); }