The Collection Interoperability (CI) Hub is an extended version of the Apache Chemistry OpenCMIS FileShare Repository. The Apache Chemistry OpenCMIS is typically deployed as a web application. Deploying the CI-Hub on the Bamboo Services Platform (BSP) required separating HTTP request processing and core service functionality into separate OSGi bundles functioning as BSP Resources Oriented Architecture (ROA) layer and Service Oriented Architecture (SOA) layer respectively.
This page describes the Collection Interoperability (CI) Hub service API, version 0.9
To discover the version and other metadata about deployed service code that fulfills this API, please utilize the Service Catalog Service . |
The CI-Hub ROA layer defines a resource, exposing the OpenCMIS AtomPub binding. The ROA API, then is defined by the Restful AtomPub Binding of the OASIS CMIS Standard. Its specific URL syntax is defined by Apache Chemistry URLs for AtomPub documentation.
In addition to the above-referenced documentation, developers of clients to the CI Hub service may wish to study the Repository Browser client implemented by team members during the course of the Bamboo Technology Project. The code for this client is located in the Project Bamboo code repository at this directory location relative to the repository root: /work-space-drupal/repository_browser/ (at this location on Sourceforge). Description and webcasts of the usage of this client can be found on the wiki page User Experience - Repository Browser - Local Fedora Objects. Note that the Repository Browser is implemented to interact with objects modeled as Bamboo Books (bamboo:book), cf. Bamboo Book Model - Context and Design. The Repository Browser interacts with the Collections Interoperability Hub through the CMIS interface as implemented by the Apache Chemistry project, referenced above, and uses Chemistry’s PHP client. The CI Hub (and the local-to-client object repository, with which the Repository Browser also interacts via CMIS) use(es) the Chemistry project’s Java implementation of a CMIS server. To assist client developers in exploring the Repository Browser codebase, here are several of the most common operations the implemented client performs, and how these operations are expressed in CMIS. GET and POST in the list below are HTTP verbs. We do not show sample URLs: Chemistry’s CMIS implementation is bound to AtomPub; the interaction between the Repository Browser and the CI Hub is therefore working at a level several layers higher than the URL.
|
The CI-Hub SOA layer defines a single method which is used to obtain an object supporting the CmisService interface. The implementation CI-Hub provides is an override to the Apache Chemistry FileShareService class, which implements all the CMIS Service methods as defined in the OASIS CMIS Standard.
See Javadoc.