Shotoku is designed to provide easy access to content repositories in which you can store data and bind metadata. The current implementation is based on a Subversion repository with a local working copy.
Here are some of the currently implemented features:
- Because a local working copy is present, data reading is very fast.
- Data writing is reliable, because data is sent straight to the repository, without touching the working copy.
- Shotoku can work in "embedded" mode in stand-alone applications, as well as a component in an application server.
- Shotoku allows you to "inject" content into any POJO using annotations (currently supported only in app server mode). POJOs which are Shotoku aware are automatically updated when a user updates a node in a Subversion repository Shotoku is configured to reference. Content can be anything and there are no structural requirements placed on the repository - even existing Subversion repositories can be referenced by Shotoku without modification.
- A simple search mechanizm.
- Integeration with Apache Velocity - you can easily store tamplates in Shotoku.