com.prosysopc.ua.server
Interface SubscriptionManagerListener


public interface SubscriptionManagerListener

A listener interface to listen to subscription changes made to the SubscriptionManager.


Method Summary
 void onAddSubscription(ServiceContext serviceContext, Subscription subscription)
          Notification of a new subscription.
 void onAfterCreateMonitoredItem(ServiceContext serviceContext, Subscription subscription, MonitoredItem item)
          Notification of monitored item creation
 void onAfterDeleteMonitoredItem(ServiceContext serviceContext, Subscription subscription, MonitoredItem item)
          Notification that a monitored item was deleted.
 void onAfterModifyMonitoredItem(ServiceContext serviceContext, Subscription subscription, MonitoredItem item)
          Notification after a MonitoredItem was modified.
 void onCreateMonitoredDataItem(ServiceContext serviceContext, Subscription subscription, org.opcfoundation.ua.builtintypes.NodeId nodeId, org.opcfoundation.ua.builtintypes.UnsignedInteger attributeId, org.opcfoundation.ua.utils.NumericRange indexRange, org.opcfoundation.ua.core.MonitoringParameters params, org.opcfoundation.ua.core.MonitoringFilter filter, org.opcfoundation.ua.core.AggregateFilterResult filterResult, org.opcfoundation.ua.core.MonitoringMode monitoringMode)
          Notification of a new MonitoredDataItem request from a client application.
 void onCreateMonitoredEventItem(ServiceContext serviceContext, Subscription subscription, org.opcfoundation.ua.builtintypes.NodeId nodeId, org.opcfoundation.ua.core.EventFilter eventFilter, org.opcfoundation.ua.core.EventFilterResult filterResult)
          Notification of a new MonitoredEventItem request from a client application.
 void onDeleteMonitoredItem(ServiceContext serviceContext, Subscription subscription, MonitoredItem item)
          Notification of monitored item deletion request.
 void onModifyMonitoredDataItem(ServiceContext serviceContext, Subscription subscription, MonitoredDataItem item, org.opcfoundation.ua.core.MonitoringParameters params, org.opcfoundation.ua.core.MonitoringFilter filter, org.opcfoundation.ua.core.MonitoringFilterResult filterResult)
          Notification of monitored event item modification request.
 void onModifyMonitoredEventItem(ServiceContext serviceContext, Subscription subscription, MonitoredEventItem item, org.opcfoundation.ua.core.EventFilter filter, org.opcfoundation.ua.core.EventFilterResult filterResult)
          Notification of monitored event item modification request.
 void onModifySubscription(ServiceContext serviceContext, Subscription subscription)
          Notification of a Subscription modification.
 void onRemoveSubscription(ServiceContext serviceContext, Subscription subscription)
          Notification of Subscription removal.
 

Method Detail

onAddSubscription

void onAddSubscription(ServiceContext serviceContext,
                       Subscription subscription)
                       throws ServiceException
Notification of a new subscription. The notification is sent after the subscription is created, but before it has been added to the SubscriptionManager. You can modify the subscription parameters, as necessary. The client will get the revised values for PublishingInterval, LifetimeCount and MaxKeepAliveCount.

If you wish to deny the subscription, you may throw a ServiceException

Parameters:
serviceContext - the client calling context.
subscription - the subscription that was added
Throws:
ServiceException

onAfterCreateMonitoredItem

void onAfterCreateMonitoredItem(ServiceContext serviceContext,
                                Subscription subscription,
                                MonitoredItem item)
Notification of monitored item creation

Parameters:
serviceContext - the client calling context.
subscription - the subscription where the monitored item was created
item - the item that was created. This can be either a MonitoredDataItem or MonitoredEventItem.

onAfterDeleteMonitoredItem

void onAfterDeleteMonitoredItem(ServiceContext serviceContext,
                                Subscription subscription,
                                MonitoredItem item)
Notification that a monitored item was deleted. The notification is sent after the item is removed from the subscription.

Parameters:
serviceContext - the client calling context.
subscription - the subscription from where the monitored item was deleted
item - the item that was deleted. This can be either a MonitoredDataItem or MonitoredEventItem.

onAfterModifyMonitoredItem

void onAfterModifyMonitoredItem(ServiceContext serviceContext,
                                Subscription subscription,
                                MonitoredItem item)
Notification after a MonitoredItem was modified.

The method is called whenever the item parameters, filter or the monitoring mode is changed. The parameter and filter changes are also notified in onModifyMonitoredDataItem(ServiceContext, Subscription, MonitoredDataItem, MonitoringParameters, MonitoringFilter, MonitoringFilterResult) or onModifyMonitoredEventItem(ServiceContext, Subscription, MonitoredEventItem, EventFilter, EventFilterResult) where you can verify them. Monitoring mode is only notified here after it has been changed.

Parameters:
serviceContext - the client calling context.
subscription - the subscription
item - the item that was modified. This can be either a MonitoredDataItem or MonitoredEventItem.

onCreateMonitoredDataItem

void onCreateMonitoredDataItem(ServiceContext serviceContext,
                               Subscription subscription,
                               org.opcfoundation.ua.builtintypes.NodeId nodeId,
                               org.opcfoundation.ua.builtintypes.UnsignedInteger attributeId,
                               org.opcfoundation.ua.utils.NumericRange indexRange,
                               org.opcfoundation.ua.core.MonitoringParameters params,
                               org.opcfoundation.ua.core.MonitoringFilter filter,
                               org.opcfoundation.ua.core.AggregateFilterResult filterResult,
                               org.opcfoundation.ua.core.MonitoringMode monitoringMode)
                               throws StatusException
Notification of a new MonitoredDataItem request from a client application.

Note that the event items are being notified by the EventManager.

Parameters:
serviceContext - the client calling context.
subscription - the subscription to which the item is being added
node - The node to monitor.
attributeId - The attribute to monitor.
indexRange - A possible index range for array values.
params - The requested monitoring parameters.
filter - an optional filter for the item. This may be a DataChangeFilter or AggregateFilter
filterResult - the results for an AggregateFilterResult. Fill the object with your results, if there are problems in using the defined filter. For DataChangeFilters the parameter is not used (and will be null).
monitoringMode - The requested MonitoringMode for the item being added.
Throws:
StatusException - if the item cannot or may not be created.

onCreateMonitoredEventItem

void onCreateMonitoredEventItem(ServiceContext serviceContext,
                                Subscription subscription,
                                org.opcfoundation.ua.builtintypes.NodeId nodeId,
                                org.opcfoundation.ua.core.EventFilter eventFilter,
                                org.opcfoundation.ua.core.EventFilterResult filterResult)
                                throws StatusException
Notification of a new MonitoredEventItem request from a client application.

Parameters:
serviceContext - the client calling context.
nodeId - the node that will be monitored
eventFilter - the event filter, which defines the nodes and events to monitor
eventFilterResult - the filter results to fill in, if there is something to note about the requested filter. This is defined as OK by default.
Throws:
StatusException - if the item cannot or may not be created.

onDeleteMonitoredItem

void onDeleteMonitoredItem(ServiceContext serviceContext,
                           Subscription subscription,
                           MonitoredItem item)
                           throws StatusException
Notification of monitored item deletion request. The notification is sent before the item is removed from the subscription.

Parameters:
serviceContext - the client calling context.
subscription - the subscription from where the monitored item was deleted
item - the item that is to be removed
Throws:
StatusException - if you wish to cancel the removal for some reason.

onModifyMonitoredDataItem

void onModifyMonitoredDataItem(ServiceContext serviceContext,
                               Subscription subscription,
                               MonitoredDataItem item,
                               org.opcfoundation.ua.core.MonitoringParameters params,
                               org.opcfoundation.ua.core.MonitoringFilter filter,
                               org.opcfoundation.ua.core.MonitoringFilterResult filterResult)
                               throws StatusException
Notification of monitored event item modification request. The notification is sent before the item is actually modified.

Parameters:
serviceContext - the client calling context.
subscription - the subscription containing the modified monitored item
item - the item being modified
params - the parameters to change for the item
filter - the new MonitoringFilter. This may be either a DataChangeFilter or AggregateFilter or null if not changed
filterResult - the results for the filter, if it is an AggregateFilter.
Throws:
StatusException - if you wish to cancel the modification for some reason.

onModifyMonitoredEventItem

void onModifyMonitoredEventItem(ServiceContext serviceContext,
                                Subscription subscription,
                                MonitoredEventItem item,
                                org.opcfoundation.ua.core.EventFilter filter,
                                org.opcfoundation.ua.core.EventFilterResult filterResult)
                                throws StatusException
Notification of monitored event item modification request. The notification is sent before the item is actually modified.

Parameters:
serviceContext - the client calling context.
subscription - the subscription containing the modified monitored item
item - the item being modified
filter - the change to the item
filterResult - the results for the filter. the parameter is filled by the EventManager which parses the filter for the item
Throws:
StatusException - if you wish to cancel the modification for some reason.

onModifySubscription

void onModifySubscription(ServiceContext serviceContext,
                          Subscription subscription)
Notification of a Subscription modification.

The method is called whenever the subscription parameters are changed. The requested parameters have already been verified by the SubscriptionManager and changed to the Subscription when the method is called. You may revise the values directly in the Subscription, if necessary.

The modified parameters are SubscriptionBase.getPublishingInterval(), SubscriptionBase.getMaxKeepAliveCount(), SubscriptionBase.getLifetimeCount(), Subscription.getMaxNotificationsPerPublish() & SubscriptionBase.getPriority().

Parameters:
serviceContext - the client calling context.
subscription - the subscription

onRemoveSubscription

void onRemoveSubscription(ServiceContext serviceContext,
                          Subscription subscription)
                          throws ServiceException
Notification of Subscription removal. The notification is sent before the subscription is actually removed.

If the subscription timeouts, it is also removed. subscription.hasExpired() = true in this case.

Parameters:
serviceContext - the client calling context. Note that this can also be ServiceContext.INTERNAL_OPERATION_CONTEXT in case the subscription is being removed when the client is closing the session (and keepSubscriptions is set to false, to request a removal of all subscriptions) or it timeouts.
subscription - the subscription to remove
Throws:
ServiceException - if you wish to cancel the removal for some reason. Do not cancel if 'serviceContext == ServiceContext.INTERNAL_OPERATION_CONTEXT'


Copyright © 2018. All rights reserved.