Airavata XRegistry is a document registry with persistent web service interface, The service supports user management and sharing documents. The registry provides support for specific document types like Service Host Descriptions, Application Deployment Descriptions, Service Descriptions Abstract and Concrete WSDLs.

XRegistry's three major capabilities include: Registry of Xml documents- Supporting Add, Delete, Get and find documents. Registry of Users and Groups - provides Recursive User and Group support. * Capability Registry - users can define capability rules saying resource "A" is accessible to User or Group "B". Also given a resource and a User, Xregistry can be asked "Does user have access to the resource?"

Build and Install

Download code comes with embadded Apache Derby database configrations. To build and run follow these steps

mvn clean install
cd target/dist-bin
./xregistry.sh xregistry.properties

The service will be available on https://{your.host.machine}:6666/xregistry. You can view the WSDL at the URL https://{your.host.machine}:6666/xregistry?wsdl. Check this URL to make sure the service started correctly. The startup scripts first make sure any previously started xregistry has been stopped. Log messages are written to xregistry.log in the dist-bin directory. To see logs

more xregistry.log

Check this log file to make sure the service started with no errors. dist-bin dir is created while at build time and can be copied to any other server with similar configurations.

Stop XRegistry

The UNIX process ID for the XRegistry service is located in the file target/dist-bin/xregistry.pid. To stop the service, use the command

kill `cat xregistry.pid`

Setup MySQL

For production services we recommend MySQL server as Xregistey backend. You can handle this at build or distribution time.

Build time: Un-comment mysql dependency in pom.xml. Change databaseDriver and databaseUrl in pom.xml and follow Build and Install steps

Distribution time Download the mysql driver "mysql-connector-java" and copy it to target/dist-bin/lib. Update xregistry.properties for jdbcDriver and databaseUrl and restart Xregistry.