Goal of this project is to provide integration with CAS systems. CAS systems are storage systems based not on location address but on content address. When a CAS is asked to store a file it computes an hash based on its content, it returns it as the address of the stored content and proceed to physically store the content. This address (it's a hash, e.g. d8668fbab44d88f8601e625fd88dee84) is then used as the key to retrieve the content, so when the CAS is presented this address it returns the associated content. As hashing algorithms give a unique association between content and its hashing, this system guarantee:
Content integrity: if stored content has been altered then there's a mismatch between hash passed as address and hash computed on the fly
Redundancy avoidance: if CAS is asked to store a content already stored it recognizes that the hash is already present and so doesn't store it again.
<discuss the project requirements and objectives>
Initial Project Scope
<outline the initial project scope>
Discussion of Design/Implementation Approach
For what I understand, anyone feel free to correct me, it's a matter of making an implementation of another content store, ex. we can have a new package org.alfresco.repo.content.cas taking as template the filestore implementation made in org.alfresco.repo.content.filestore.
Please use the following format:
<Your Name and/or contact info>
I would propose a XAM integration which would allow to cover multiple CAS stores with one interface (incl. the EMC Centera).
UPDATE: I would see two phases for this integration: 1) storage of the content via XAM on the storage; 2) additional storage of the metadata of the object with the content (e.g. as XML) to fulfill OAIS requirements and have a possibility to recover the metadata when the leading system crashes (by reading and interpreting the data stored via XAM).
Anybody interested in an implementation please contact me (steffen . schilke (a) gmx . net) I would need some pointers where to fiddle to add these into Alfresco and some brush up on development with it.