@Subscribe
  @AllowConcurrentEvents
  public void onAmbariEvent(AlertDefinitionChangedEvent event) {
    LOG.debug("Received event {}", event);

    AlertDefinition definition = event.getDefinition();

    LOG.debug("Updating alert definition {}", definition);

    if (definition.getSource().getType() == SourceType.AGGREGATE) {
      m_aggregateMapping.registerAggregate(event.getClusterId(), definition);
    }

    // update any current alerts
    List<AlertCurrentEntity> currentAlerts = m_alertsDao.findCurrentByDefinitionId(definition.getDefinitionId());
    for (AlertCurrentEntity current : currentAlerts) {
      AlertHistoryEntity history = current.getAlertHistory();

      // if the definition label changed, update the current alerts
      if (!StringUtils.equals(definition.getLabel(), history.getAlertLabel())) {
        history.setAlertLabel(definition.getLabel());
        m_alertsDao.merge(history);
      }
    }
  }
Handles {@link AlertDefinitionChangedEvent} by performing the following
tasks:
<ul>
<li>Updating definition with {@link AggregateDefinitionMapping}</li>
<li>Updating current alerts with definition label</li>
</ul>

@param event
         the event being handled.
ambari-server/src/main/java/org/apache/ambari/server/events/listeners/alerts/AlertLifecycleListener.java