Interface NotificationMessageDeliveryService

All Known Implementing Classes:
NotificationMessageDeliveryServiceImpl

public interface NotificationMessageDeliveryService
The NotificationMessageDeliveryService class is responsible various functions regarding the NotificationMessageDelivery records that exist within the system.
Author:
Kuali Rice Team (rice.collab@kuali.org)
  • Method Details

    • getNotificationMessageDelivery

      NotificationMessageDelivery getNotificationMessageDelivery(Long id)
      This method will retrieve a NotificationMessageDelivery object from the system, given the id of the actual record.
      Parameters:
      id -
      Returns:
      NotificationMessageDelivery
    • getNotificationMessageDeliveryByDelivererId

      NotificationMessageDelivery getNotificationMessageDeliveryByDelivererId(String id)
      This method will retrieve a NotificationMessageDelivery object from the system, given the external deliverer system id registered with the NotificationMessageDelivery.
      Parameters:
      id - the external deliverer system id
      Returns:
      NotificationMessageDelivery
    • getNotificationMessageDeliveries

      Collection<NotificationMessageDelivery> getNotificationMessageDeliveries()
      This method will return all NotificationMessageDelivery objects in the system actual record.
      Returns:
      List<NotificationMessageDelivery> list of NotificationMessageDelivery objects in the system
    • getNotificationMessageDeliveries

      Collection<NotificationMessageDelivery> getNotificationMessageDeliveries(NotificationBo notification, String userRecipientId)
      This method will return all NotificationMessageDelievery objects generated for the given Notification for the given user
      Parameters:
      notification - the notification which generated the message deliveries
      userRecipientId - the id of the user whose message deliveries to obtain
      Returns:
      collection of NotificationMessageDelivery objects generated for the given Notification for the given user
    • takeMessageDeliveriesForDispatch

      Collection<NotificationMessageDelivery> takeMessageDeliveriesForDispatch()
      This method is responsible for atomically finding all untaken, undelivered message deliveries, marking them as taken and returning them to the caller for processing. NOTE: it is important that this method execute in a SEPARATE dedicated transaction; either the caller should NOT be wrapped by Spring declarative transaction and this service should be wrapped (which is the case), or the caller should arrange to invoke this from within a newly created transaction).
      Returns:
      a list of available message deliveries that have been marked as taken by the caller
    • takeMessageDeliveriesForAutoRemoval

      Collection<NotificationMessageDelivery> takeMessageDeliveriesForAutoRemoval()
      This method is responsible for atomically finding all untaken message deliveries that are ready to be autoremoved, marking them as taken and returning them to the caller for processing. NOTE: it is important that this method execute in a SEPARATE dedicated transaction; either the caller should NOT be wrapped by Spring declarative transaction and this service should be wrapped (which is the case), or the caller should arrange to invoke this from within a newly created transaction).
      Returns:
      a list of notifications to be autoremoved that have been marked as taken by the caller
    • unlockMessageDelivery

      void unlockMessageDelivery(NotificationMessageDelivery messageDelivery)
      Unlocks the specified messageDelivery object
      Parameters:
      messageDelivery - the message delivery to unlock