Interface NotificationPublisher


public interface NotificationPublisher
Responsible for providing various types of publishers of notifications e.g. email, sms, message, etc.
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    Indicates if given publisher is active and thus should be used to publish notifications
    void
    publish(String sender, String subject, Set<org.kie.api.task.model.OrganizationalEntity> recipients, String body)
    Publishes given notification based on the actual implementation.
    void
    publish(String sender, String subject, Set<org.kie.api.task.model.OrganizationalEntity> recipients, String template, Map<String,Object> parameters)
    Renders body based on given template and parameters and then publishes given notification based on the actual implementation.
  • Method Details

    • publish

      void publish(String sender, String subject, Set<org.kie.api.task.model.OrganizationalEntity> recipients, String body)
      Publishes given notification based on the actual implementation. This method should never thrown exceptions as they might be interfering with processing logic.
      Parameters:
      sender - identifier of the sender to be attached to the message produced from the notification
      subject - subject to be used when publishing the notification
      recipients - list of users or groups the notification should be send to
      body - actual message body
    • publish

      void publish(String sender, String subject, Set<org.kie.api.task.model.OrganizationalEntity> recipients, String template, Map<String,Object> parameters)
      Renders body based on given template and parameters and then publishes given notification based on the actual implementation. This method can throw IllegalArgumentException in case given template was not found. This allows to fall back to send notification with not rendered body
      Parameters:
      sender - identifier of the sender to be attached to the message produced from the notification
      subject - subject to be used when publishing the notification
      recipients - list of users or groups the notification should be send to
      template - name of the template to be used to render body
      parameters - map of parameters that can be used while rendering body from the template
      Throws:
      IllegalArgumentException - when template was not found
    • isActive

      boolean isActive()
      Indicates if given publisher is active and thus should be used to publish notifications
      Returns:
      true if active false otherwise