Interface AlarmProvider


public interface AlarmProvider
The AlarmProvider is an entity that operates on alarms and provides access to alarm state model functionality. An AlarmProvider is responsible for sourcing and providing functionality for either a local or remote system.

Implementations can support two capabilities:

  • AlarmQueryProvider - provides the ability to query alarm status and acknowledge alarms. When sourced from the local gateway system, it indicates that alarm data originates from the local gateway.
  • AlarmNotificationProvider - exposes notification pipelines for alarm delivery. When sourced from the local gateway system, it indicates that available pipelines are hosted on the local gateway.
  • Method Details

    • getName

      String getName()
      Returns the unique name identifier for this alarm provider.
      Returns:
      the provider name
    • getQueryProvider

      Optional<AlarmQueryProvider> getQueryProvider()

      Provides access to the associated AlarmQueryProvider, if one is available, for this AlarmProvider. An AlarmQueryProvider enables querying alarm status and acknowledging alarms from either the local gateway or a remote system.

      When sourced from the local gateway system, the query provider indicates that alarm data and acknowledgment capabilities originate from the local gateway.

      Returns:
      An Optional containing the AlarmQueryProvider if it exists, or an empty Optional if no query provider is available.
    • getNotificationProvider

      Optional<AlarmNotificationProvider> getNotificationProvider()

      Provides access to the associated AlarmNotificationProvider, if one is available, for this AlarmProvider. An AlarmNotificationProvider exposes pipelines for alarm notifications, which can be used to send alarms to registered pipelines on local or remote systems.

      When sourced from the local gateway system, the notification provider indicates that available pipelines are hosted and managed by the local gateway.

      Returns:
      An Optional containing the AlarmNotificationProvider if it exists, or an empty Optional if no notification provider is available.
    • isLocal

      default boolean isLocal()

      Determines whether this AlarmProvider sources its functionality from the local gateway system. This affects how the provider's capabilities are exposed and managed within the alarm system.

      For query providers, true indicates that alarm data and acknowledgment capabilities are sourced from the local gateway system. For notification providers, true indicates that available pipelines are sourced from the local gateway system.

      Returns:
      true by default, indicating alarm functionality is local to the gateway. Override to return false if functionality is sourced from a remote system.