/** * Dispatch an event for distribution to the local Event receivers. */ @Override public void dispatch(@Nonnull final NessEvent event) { if (event == null) { LOG.trace("Dropping null event"); } else { for (final NessEventReceiver receiver : eventReceivers) { try { if (receiver.accept(event)) { receiver.receive(event); } } catch (Exception e) { // don't reraise. We prefer to not disrupt event handling by other receievers LOG.error(e, "Exception during event handling by %s of event %s", receiver, event); } } } } }