IS-Publisher

From Gcube Wiki
Revision as of 22:10, 7 January 2009 by Manuele.simi (Talk | contribs)

Jump to: navigation, search

In conjunction with the IS-Client and the IS-Notifier, the IS-Publisher represents the mediation layer gCube Services will rely on to interact with the Information Service as a whole.

The role of the IS-Publisher is to feed the IS with:

  • GCUBEResource profiles
  • services' states as of WS-ResourceProperty documents

In addition, it offers a built-in mechanism to publish the GCUBEResource profiles as local events to whoever subscribe for them.

Design

The IS-Publisher is the implementation of two interfaces (ISPublisher and ISLocaLPublisher) defined in the context of the gCore Framework to decouple gCube Services from the specific implementation of the Information Service.

Operations

The main functions supported from the IS-Publisher are:

  • registerGCUBEResource() – which takes as input parameter a message containing a resource (gCUBEResource), an operational scope (GCUBEScope), i.e. an object representing a scope in the gCube model of VO/VREs, and a security manager (GCUBESecurityManager), i.e. the component keeping track of credentials, and returns a string containing the registered profile if the registration is successful;
  • updateGCUBEResource() – which takes as input parameter a message containing a resource, an operational scope and a security manager and updates a resource previously registered in the IS.
  • removeGCUBEResource() – which takes as input parameter a message containing a resource ID, a resource type, an operational scope and a security manager and removes the corresponding resource previously registered in the IS;
  • registerWSResource() – which takes as input parameter a message containing a stateful resource (each stateful entity different from a gCube Resource) and optionally the registration name and the scope and register such a resource in the IS;
  • removeWSResource() – which takes as input parameter a message containing a stateful resource (each stateful entity different from a gCube Resource) and optionally the registration name and the scope and removes such a resource;


  • registerISNotification() – which takes as input parameter a message containing the topic producer (actually its EPR), a list of topics, an operational scope and a security manager and registers such topics in the IS-Notifier;
  • registerToISResource() – which takes as input parameter a message containing the topic producer (actually its EPR), a list of topics, an operational scope and a security manager and registers such topics in the IS-Notifier;
  • unregisterFromISNotification() – which takes as input parameter a message containing the topic producer (actually its EPR), a list of topics, an operational scope and a security manager and un-registers such topics from the IS-Notifier;
  • unregisterISNotification() – which takes as input parameter a message containing the topic producer (actually its EPR), a list of topics, an operational scope and a security manager and un-registers such topics from the IS-Notifier;