- to users with the role
ROLE_ADMINwhen the initial data load completes. This is configurable in theapplication.ymlfile using thesign-off.notification.server-started-notification-user-roleproperty. - to users specified as
Approverswhen 4-eyes tasks require approval - to all users involved in the task when an export succeeds or fails
1. Inject the INotificationService bean into your class
The INotificationService is a convenience service that helps publish the events that the notification service listens for. To use it, inject it into the component that needs to send notifications:
2. Create and publish your notifications
With the service wired up, you can now create and publish notifications. TheNotification class is a simple POJO that represents a notification. Use one of the class’s builder methods to create Notification objects:
Notification.notificationWithDefaultActionsBuilder(): Creates a notification with the default actions. For more information, see Notification actions. This is the recommended builder to use in most scenarios.Notification.builder(): Creates a bare notification with no actions.
INotificationService:
Notification actions
Notifications can have actions that users can take when they receive them. Instances of theNotificationAction class represent one of these actions that can be taken on a notification. The following default actions are provided
when using the Notification.notificationWithDefaultActionsBuilder() method:
MARK_READ: Marks the notification as read. Only enabled if the notification is unread (isRead=false).MARK_UNREAD: Marks the notification as unread. Only enabled if the notification is read (isRead=true).DELETE: Deletes the notification.
Restrict notifications to specific users
By default, notifications are sent to all users. If you want to restrict a notification to only be sent to specific users, you can do so by setting theusers or userRoles fields:
users list AND have one of the roles in userRoles.
Notification Service properties
The Notification Service contains the following properties that can be configured in yourapplication.yml file: