Class NotificationSuppression

java.lang.Object
org.kuali.rice.kew.actionrequest.service.impl.NotificationSuppression

public class NotificationSuppression extends Object
This utility class encapsulates functions used to provide notification suppression
Author:
Kuali Rice Team (rice.collab@kuali.org)
  • Field Details

  • Constructor Details

    • NotificationSuppression

      public NotificationSuppression()
  • Method Details

    • addNotificationSuppression

      public void addNotificationSuppression(RouteNodeInstance nodeInstance, ActionRequestValue actionRequestValue)
      add metadata (a NodeState) to the route node so that if this action request is regenerated verbatim, the notification email will suppressed (since it is a duplicate!).
      Parameters:
      nodeInstance - where additional NodeState will be added
      actionRequestValue -
    • filterNotificationSuppressedActionItems

      protected void filterNotificationSuppressedActionItems(List<ActionItem> actionItems, RouteNodeInstance routeNodeInstance)
      This method filters any ActionItems whose related ActionRequestValueS have been flagged for notification suppression.
      Parameters:
      actionItems - the ActionItemS to filter
      routeNodeInstance - the RouteNodeInstance that the actionItems are associated with
    • notify

      public void notify(List<ActionItem> actionItems, RouteNodeInstance routeNodeInstance)

      This method takes care of notification for ActionItemS. It has logic for suppressing notifications when the RouteNodeInstance has NodeState specifically hinting for notification suppression for a given ActionItem.

      A side effect is that any notification suppression NodeStateS will be removed from the RouteNodeInstance after notifications are sent.

      Parameters:
      actionItems - a list of ActionItemS related to the given routeNodeInstance
      routeNodeInstance - the RouteNodeInstance related to the given actionItems
    • getSuppressNotifyNodeStateKeys

      protected List<String> getSuppressNotifyNodeStateKeys(ActionRequest a)
      Builds keys for action requests used for notification suppression.

      NOTE: This method needs to stay in sync with getSuppressNotifyNodeStateKeys(org.kuali.rice.kew.dto.ActionRequestDTO) Any changes here must be made there as well!

      Parameters:
      a -
      Returns:
      List
    • getSuppressNotifyNodeStateKeys

      protected List<String> getSuppressNotifyNodeStateKeys(ActionRequestValue a)
      Builds keys for action requests used for notification suppression.

      NOTE: This method needs to stay in sync with getSuppressNotifyNodeStateKeys(org.kuali.rice.kew.actionrequest.ActionRequestValue) Any changes here must be made there as well!

      Parameters:
      a -
      Returns:
      List