Difference between revisions of "IS-Notification"

From Gcube Wiki
Jump to: navigation, search
(Interface)
(Design)
Line 1: Line 1:
 
=== Design ===
 
=== Design ===
 +
 +
The IS-Notification is a library that provides a subscription/notification mechanism based on Remote Events. This library helps the clients to interact with the Notifier Service and allows:
 +
* for a Client or a Service (Subscriber) to subscribe for a Topic and receiving notifications
 +
* for a Service (producer) to register its own topic and sending notification.
  
 
=== Interface ===
 
=== Interface ===

Revision as of 18:58, 4 May 2009

Design

The IS-Notification is a library that provides a subscription/notification mechanism based on Remote Events. This library helps the clients to interact with the Notifier Service and allows:

  • for a Client or a Service (Subscriber) to subscribe for a Topic and receiving notifications
  • for a Service (producer) to register its own topic and sending notification.

Interface

  • public <T extends BaseNotificationConsumer> void registerToISNotification(List<QName> notifications, T consumer, GCUBESecurityManager manager, GCUBEScope ... scope) throws ISNotifierException – this method registers a entity of type T (consumer) for a list of QName representing the topics (notifications) in selected Scopes (scope) with a GCUBESecurityManager (manager) in the IS-Notifier;
  • public void unregisterFromISNotification(List<QName> notifications, GCUBESecurityManager manager, GCUBEScope ... scope) throws ISNotifierException – this method unregisters the consumer for a list of Topics represented by QNames (notifications) from the IS-Notifier in the selected scopes (scope) with a GCUBESecurityManager (manager);
  • public void registerISNotification (EndpointReferenceType producerEPR, List<? extends Topic> notifications, GCUBESecurityManager manager, GCUBEScope ... scope) throws ISNotifierException – this method registers the reference to a resource (producerEPR) that produces a list of topics (notifications) in the IS-Notifier in the selected scopes (scope) with a GCUBESecurityManager (manager);
  • public void unregisterISNotification (EndpointReferenceType producerEPR, List<? extends Topic> notifications, GCUBESecurityManager manager, GCUBEScope ... scope) throws ISNotifierException – this method unregister the reference to a resource (producerEPR) for a list of topics (notifications) in the IS-Notifier in the selected scopes (scope) with a GCUBESecurityManager (manager);
  • public boolean isCompleted(QName topic, EndpointReferenceType producerEpr, GCUBESecurityManager manager, GCUBEScope scope) throws ISNotifierException - this methods checks if a topic (topic) registration is completed or not for a producer (producerEpr) in the IS-Notifier in the selected scopes (scope) with a GCUBESecurityManager (manager);

Implementation