Developer Documentation
TODO: take content from Developers page on website
Technical Architecture
TODO: Describe the ICAT technical architecture ie. major dependencies, technologies (eg. REST), design patterns. Check and correct this, add links: The major components of the ICAT software are written in Java with installation scripts and supporting utilities written in Python. The software is written for the Java Enterprise Edition platform and runs inside an application server such as Glassfish (or its successor, Paraya). The main Java/JavaEE APIs used are:
- Java Persistence API (JPA) backed by MySQL or Oracle
- Apache HttpComponents
- Java Json ...
- Java REST API (JAX-RS) provided by Jersey?
- Apache Lucene for searching
- and more...
ICAT uses Maven for the build system and jUnit for testing.
How To...
TODO: with reference to Component Guidelines, the icat.server wiki and the ids.server wiki.
- How to set up a development environment
- How to build ICAT
- How to submit a patch
- How to run the tests
Reference Documentation
TODO: link to JavaDoc?
Each component has documentation automatically generated by Maven. TODO: information on what is contained in this documentation. The Maven documentation is available here. To find the Maven documentation for icat.server version 4.8.0, for example, either follow the links or append icat/server/4.8.0/
to the URL. For convenience, the latest releases of the major components are listed below:
- ICAT Server 4.8.0
- TODO: add more eg. IDS, auth, storage plugins