public void RegisterEventHandlerExplicitly <TType>(IHandleDomainEvent <TType> domainEventHandler) where TType : IDomainEvent <TType> { var eventHandlers = eventHandlerLists.GetOrAdd(typeof(TType), (type) => new List <object> { }); eventHandlers.Add(domainEventHandler); }
public IDisposable RegisterHandler <TEvent>(IHandleDomainEvent <TEvent> handler) where TEvent : IDomainEvent { if (handler == null) { throw new ArgumentNullException("handler"); } return(RegisterHandlerFor <TEvent>(handler.Handle)); }
public IDisposable RegisterHandler(IHandleDomainEvent handler) { return(RegisterHandlerFor <IDomainEvent>(handler.Handle)); }
public static IDisposable RegisterHandler <T>(IHandleDomainEvent <T> handler) where T : IDomainEvent { return(Events.RegisterHandler(handler)); }