/**
   * {@inheritDoc}
   *
   * <p>This method is invoked by the event manager when a new event is available for processing.
   * Each message is examined for its Universal Event Identifier and the appropriate action is
   * taking based on each UEI.
   */
  @Override
  public void onEvent(Event event) {

    LOG.debug("onEvent: received event, UEI = {}", event.getUei());
    EventBuilder ebldr = null;

    if (isReloadConfigEvent(event)) {
      LOG.info(
          "onEvent: Reloading events configuration in response to event with UEI "
              + event.getUei());
      try {
        m_eventConfDao.reload();
        ebldr = new EventBuilder(EventConstants.RELOAD_DAEMON_CONFIG_SUCCESSFUL_UEI, getName());
        ebldr.addParam(EventConstants.PARM_DAEMON_NAME, "Eventd");

      } catch (Throwable e) {
        LOG.error("onEvent: Could not reload events config", e);
        ebldr = new EventBuilder(EventConstants.RELOAD_DAEMON_CONFIG_SUCCESSFUL_UEI, getName());
        ebldr.addParam(EventConstants.PARM_DAEMON_NAME, "Eventd");
        ebldr.addParam(EventConstants.PARM_REASON, e.getLocalizedMessage().substring(0, 128));
      }

      if (ebldr != null) {
        m_eventIpcManager.sendNow(ebldr.getEvent());
      }
    }
  }