DIS-IP
Introduction
The DISIP is a library that allows to publish groups of WS-Resource properties in either pull or push modality. To deliver its functionality, it relies on the implementation of the WS-ServiceGroup specification provided by the MDS Aggregator Framework. After a registration, the group of registered properties becomes an aggregator source for one or more remote DIS-IC instances (acting as aggregator sinks) that collect the data and made them available to other DILIGENT services. If a WS-Resource implements the PersistentResource interface for persistence operations, the Registration has to be renewed in the load() method each time the resource is restored from its persistent state.
For further details about the Aggregator Framework, please see
http://www.globus.org/toolkit/docs/development/4.1.0/info/aggregator/index.html
For information about the syntax of the registration file to use in pull mode, please see http://www.globus.org/toolkit/docs/development/4.1.0/info/aggregator/aggregator-sources-query.html
For information about the syntax of the registration file to use in push mode, please see http://www.globus.org/toolkit/docs/development/4.1.0/info/aggregator/aggregator-sources-subscription.html
Implentation Overview
The DISIP is a static class that maintains a pool of "Managers" for each VO they have to acts. Using Credentials or service EPR is possible retrieve the rigth Manager instance to use in the scope of a particular VO. The Manager used are of 4 Types:
- Resource Manager : Used to publish/remove on the DIS-IC WS-resource properties documents
- DILIGENTProfileManager : Used to Register/Unregister to/from DIS-Registry DILIGENT Resource Profiles
- BrokerManager : Used by a Notification producer to register/unregister topics to/from DIS-Broker
- Profile Manager : used internally by the DIS-registry to register profiles on the DIS-IC
Dependencies
The DISIP exploits Authentication API functionalities to estract DL and VO info from Credentials