public void Handle(NewIncomingEvents message) { if (this.log.Verbose) { this.log.Trace($"{name} is now handling {message.IncomingEvents.Count()} message/s"); } foreach (var e in message.IncomingEvents) { this.eventQueue.Enqueue(e); } }
public void Handle(NewIncomingEvents message) { if (this.log.Verbose) { this.log.Trace($"{name} is now handling {message.IncomingEvents.Count()} message/s"); } foreach (var incomingEvent in message.IncomingEvents) { this.HandleGracefully(incomingEvent); } this.log.Trace($"{name} handled {message.IncomingEvents.Count()} message/s"); }
public void Handle(NewIncomingEvents message) { foreach (var @event in message.IncomingEvents) { if (this.handlers.ContainsKey(@event.GetType())) { try { this.state = this.handlers[@event.GetType()].Invoke(this.state, @event); this.bus.Publish(new IncomingEventHasBeenProcessed(@event)); } catch (Exception ex) { var wrappedEx = new FatalErrorException($"An error ocurred while handling event of type {@event.GetType()}", ex); this.bus.Publish(new FatalErrorOcurred(wrappedEx)); this.log.Error(wrappedEx, "Query failed"); throw; } } } }