This concerns a dedicated eb service for the access towards a content repositories management component: the KMS-GatewaysEngine.
The GatewaysEngine is a directory of Content Repositories descriptors.
All the CR that the GatewaysEngine manages, are associated through a unique ID, to a ContentRepositoryDescriptor that contains all the information related to how a CTM can access the given CR (the gateway associated to it).
The CTM is integrated in the tool/application. For details on the CTM component, please refer to the Java APIs section. When a new CR is added for exploitation, the GatewaysEngine has all the information about accessing it (this internal descriptors are not present at the KP-Lab tool level). This way, the addition of a new CR can be done dynamically during exploitation.
One of the responsibilities of the GatewaysEngine is to supply a mechanism to present the KP-Lab tools
(at the CTM level) with a list of CRs (we must take into account from the beginning the fact that there can be more
than one, and that they can be physically distributed). This would be done through a dedicated method of
the KMS - GatewaysEngine, that would return a map containing couples of unique CR identifiers, and the information
related to each one. The KP-Lab tool can choose the one being the closest to its location,
for transfer rate related reasons. This would be the equivalent of choosing a “mirror”.
Thus, the KMS (through its Gateways Engine), gives the possibility to any KP-Lab tool to
dynamically retrieve the list of content repositories that are managed in the KP-Lab system, at any given time. The presentation of this information at the application level is entirely under the responsibility of
the KP-Lab tool.
Through this mechanism, the KMS can dynamically update the list of managed CRs.
The GatewaysEngine is a repository of Content Repository (CR) information. This information can be
asked by a KP-lab tool, in order to get the available CRs managed by the KMS. The module exposes one method:
getAvailableContentRepositories () that returns a list of ContentRepositoryDescriptor
(each descriptor detains all the information related to a CR). It does not use the services of any other module.
It provides services to the CTM module (that deals with requests from the KP-Lab tools). This module is a web-service that has
been implemented based on Axis2.
The only service that it exposes for the moment is the: getAvailableContentRepositories(): ContentRepositoryDescriptor