Started client download servlet. Trying out in forum - there is some issue with accessing the servlet. Checked in as this code has been released to Dolly.
Added new class org.lamsfoundation.lams.contentrepository.client.ToolContentHandler The class handles a simple connection to the content repository, and allows a file to be stored and retrieved. Designed to be used by tools when their only use of the content repository is to store files for online and offline instructions.
SetProperties wasn't working for file nodes - had forgotten to update the validate test, so was expected a file to be included even when just the properties had changed. Altered validation to check inputStream and check on disk for a file.
Added a call to set a custom property, and cleaned up some unnecessary classes - I had moved the service related classes to the service package earlier but the old classes haven't been removed.
Rejigged a few things to make junit work locally, now that main code uses JNDI database. Included moving the test context to the src area so that is in jar and available for junit testing in other projects. Changed name of createCredential to createCredentials. More consistent with other methods. Fixed a transaction bug - this method was defined as createCredentials in the Spring xml file.
Rejigged the link from the child node to the parent to point from the child node (rather than child node version). This restricts us to a design where we always create new nodes for new versions of a parent. Also made the lookup of child nodes manual (rather than loaded automatically by hibernate). Doesn't use lazy loading - goes direct to database to find node. Not so nice. But the changes have almost doubled the throughput in my testing.