Interface AlarmNotificationProfile
-
- All Known Implementing Classes:
AlarmNotificationProfile.DisabledProfile,AlarmNotificationProfile.NoOpProfile
public interface AlarmNotificationProfile
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static classAlarmNotificationProfile.DisabledProfilestatic classAlarmNotificationProfile.NoOpProfileNo-op implementation of an AlarmNotificationProfile.
-
Field Summary
Fields Modifier and Type Field Description static AlarmNotificationProfileNO_OP_PROFILEA shared instance of aAlarmNotificationProfile.NoOpProfile.
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description java.lang.StringgetName()Returns the user-defined name of this profile.java.util.Collection<NotificationProfileProperty<?>>getProperties()ACollectionofConfigurationPropertys that will be presented to the user during configuration of a notification block in the alarm pipeline UI.ProfileStatusgetStatus()Returns information about the running status of the profile.java.util.Collection<ContactType>getSupportedContactTypes()voidonShutdown()Called when the profile has been removed fromAlarmNotificationManager.voidonStartup()Called after instantiation and the profile has been added toAlarmNotificationManager.voidsendNotification(NotificationContext notificationContext)Notify a list of Users about an alarm using the notification mechanism provided by this profile.default voidsetContextMap(java.util.Map<java.lang.String,java.lang.String> contextMap)Allows us to pass along a MDC context map for logging.
-
-
-
Field Detail
-
NO_OP_PROFILE
static final AlarmNotificationProfile NO_OP_PROFILE
A shared instance of aAlarmNotificationProfile.NoOpProfile.
-
-
Method Detail
-
getName
java.lang.String getName()
Returns the user-defined name of this profile.- Returns:
- the user-defined name of this profile.
-
getStatus
ProfileStatus getStatus()
Returns information about the running status of the profile.- Returns:
- a
ProfileStatusthat describes the status of this profile.
-
sendNotification
void sendNotification(NotificationContext notificationContext)
Notify a list of Users about an alarm using the notification mechanism provided by this profile. Implementations must be non-blocking and return quickly, using the notificationContext to call back when the notification work has finished. If some underlying failure in the notification mechanism means no notifications can be sent, useNotificationContext.notificationFailed(com.inductiveautomation.ignition.common.i18n.LocalizedString).- Parameters:
notificationContext- TheNotificationContext.
-
getProperties
java.util.Collection<NotificationProfileProperty<?>> getProperties()
ACollectionofConfigurationPropertys that will be presented to the user during configuration of a notification block in the alarm pipeline UI. The configured values for these properties will be available in theNotificationContextfor eachsendNotification(NotificationContext)call to this profile.- Returns:
- A
CollectionofPropertys thatsendNotification(NotificationContext)will expect itsNotificationContextto have configured.
-
getSupportedContactTypes
java.util.Collection<ContactType> getSupportedContactTypes()
- Returns:
- a
CollectionofContactTypes that this profile is capable of sending notification to.
-
onStartup
void onStartup()
Called after instantiation and the profile has been added toAlarmNotificationManager.
-
onShutdown
void onShutdown()
Called when the profile has been removed fromAlarmNotificationManager. This could be an update to the profile (remove+add), a removal, or shutdown of the system.
-
setContextMap
default void setContextMap(java.util.Map<java.lang.String,java.lang.String> contextMap)
Allows us to pass along a MDC context map for logging. Default behavior is no-op for backwards compatibility- Parameters:
contextMap- Map of MDC key-value pairs. Can be null.
-
-