private void createSeparateNotices(NotificationDispatcher dispatcher, AlertTargetEntity target,
                                      List<AlertNoticeEntity> notices) {
    for (AlertNoticeEntity notice : notices) {
      AlertNotification notification = buildNotificationFromTarget(target);
      AlertHistoryEntity history = notice.getAlertHistory();
      notification.CallbackIds = Collections.singletonList(notice.getUuid());

      // populate the subject and body fields; if there is a problem
      // generating the content, then mark the notices as FAILED
      try {
        renderNotificationContent(dispatcher, notification, history, target);

        // dispatch
        DispatchRunnable runnable = new DispatchRunnable(dispatcher, notification);
        m_executor.execute(runnable);
      } catch (Exception exception) {
        LOG.error("Unable to create notification for alert", exception);

        // mark these as failed
        notification.Callback.onFailure(notification.CallbackIds);
      }
    }
  }
If the dispatcher does not support digest, each notice must have a 1:1 notification created for it.
@param dispatcher dispatches the created notifications.
@param target where notifications will be sent.
@param notices notices should be dispatched.
ambari-server/src/main/java/org/apache/ambari/server/state/services/AlertNoticeDispatchService.java