public void dispatch(Event<H> event) { for (H eventHandler : handlers) { log.debug("Dispatching event {} with handler {}", event, eventHandler); try { event.dispatch(eventHandler); } catch (RuntimeException e) { log.warn("Exception caught when dispatching event: {}", e.getMessage(), e); } } }
@Override public <H extends EventHandler> void fireEvent(Event<H> event) { for (H eventHandler : internalGetHandlers(event)) { log.debug("Dispatching event {} with handler {}", event, eventHandler); try { event.dispatch(eventHandler); } catch (RuntimeException e) { log.error("Exception caught when dispatching {} with {} eventHandler.", event.getClass().getName(), eventHandler.getClass().getName(), e); } } }