Our subversion repository can be browsed here:
https://open.med.harvard.edu/svn/shrine
SHRINE follows common subversion conventions for directories within our repository. Of note are:
- trunk - contains the active development of the different software components.
- releases - contains the releases of the software.
Within the trunk, two directories are important:
- code - the Shrine source code
- ontology - artifacts related to the Shrine ontology
The code directory is the root of a Maven module tree. The following submodules/directories are present:
Directory |
Description |
---|---|
|
The Shrine adapter; it communicates with a local i2b2 instance and exposes web APIs for Shrine and i2b2 use. |
adapter-api |
Classes and traits for invoking adapter services both locally and remotely. |
auth |
Classes and traits related to authorization and authentication. |
broadcaster-aggregator |
Classes and traits used for broadcasting queries and aggregatign results. |
broadcaster-service |
A rest API for the broadcaster-aggregator, allowing the broadcaster-aggregator to be located seperately from where queries enter a Shrine network. |
client |
Code for invoking Shrine APIs, both locally and remotely. |
commons |
Classes and traits representing messages that may be sent between Shrine nodes, plus parsing and marshalling code for Shrine and i2b2 formats. |
config |
Code to parse Shrine config files. Depends on Typesafe Config. |
crypto |
Code related to keystore management, signing, and signature verification. |
data-commons |
Code shared by Shrine components that work with relational DBs. |
deploy |
Deployment scripts, useful only to core Shrine developers at HMS. |
hms-support |
Code specific to the HMS deployment of Shrine. |
install |
Scripts for installing Shrine on i2b2 VMs. |
integration |
Integration tests. |
ont-support |
Code to provide Shrine ontology terms and communicate with i2b2 ontology cells. |
proxy |
The Shrine proxy; necessary to support the legacy web client and comply with architectural mandates. |
service |
A rest API that forms an entry point into the Shrine network for queries. It exposes an i2b2-flavored API for use by teh web client, and a rest API for use by Shrine components. |
shrine-app |
Shrine's application wiring and JAX-RS initialization code. |
shrine-webclient |
The legacy web client. |
test-commons |
Code shared by various unit tests. |
util |
Various utility classes and traits, for things like XML manipulation, dates and times, etc. |
utilities/batch-querier |
A tool for making a predefined set of queries. Designed for internal HMS use. |
utilities/monitor |
A tool for monitoring the status of Shrine nodes. Specific to teh HMS deployment. |
utilities/scanner |
A tool for testing ontology mappings. Designed for internal HMS use. |
utilities/utility-commons |
Classes and traits shared by various utility modules. |
war |
Packages a Shrine war capable of exposing the adapter, broadcaster-service, shrine-service, and happy APIs. |