public interface RemoteAlertSender
NotificationServicewhen sending alerts. Implementations of this interface have to be able to connect and send alerts to one or more management servers in a protocol specific way.
The properties of the service registration should specify a list of
destinations (principals) where the service is capable of sending alerts.
This can be done by providing a
String array of principal names in
principals registration property. If this property is not
registered, the service will be treated as the default sender. The default
alert sender is only used when a more specific alert sender cannot be found.
principals registration property is used when the
NotificationService.sendNotification(String, int, String, AlertItem)
method is called, to find the proper
RemoteAlertSender for the given
destination. If the caller does not specify a principal, the alert is only
sent if the Notification Sender finds a default alert sender, or if the
choice is unambiguous for some other reason (for example if only one alert
sender is registered).
void sendAlert(java.lang.String principal, int code, java.lang.String correlator, AlertItem items) throws java.lang.Exception
executecommand, a correlation identifier can be specified to provide the association between the execute and the alert.
principal parameter specifies which server the alert should
be sent to. This parameter can be
null if the client does not
know the name of the destination. The alert should still be delivered if
possible; for example if the alert sender is only connected to one
Any exception thrown on this method will be propagated to the original
sender of the event, wrapped in a
DmtException with the code
Since sending the alert and receiving acknowledgment for it is potentially a very time-consuming operation, alerts are sent asynchronously. This method should attempt to ensure that the alert can be sent successfully, and should throw an exception if it detects any problems. If the method returns without error, the alert is accepted for sending and the implementation must make a best-effort attempt to deliver it.
principal- the name identifying the server where the alert should be sent, can be
code- the alert code, can be 0 if not needed
correlator- the correlation identifier of an associated EXEC command, or
nullif there is no associated EXEC
items- the data of the alert items carried in this alert, can be empty or
nullif no alert items are needed
java.lang.Exception- if the alert can not be sent to the server
Copyright © OSGi Alliance (2000, 2018). All Rights Reserved. Licensed under the OSGi Specification License, Version 2.0