The attached zip contains a set of patches that allow
multiple DataStoreInterfaces to co-exist in one Harmonise
app, this is usefull for copying data from one database to
another.
The primary change is to CacheHandler, which now
manages one instance per dsi, and returns it from a
function getInstance( dsi ) - the former getInstance()
function is retained and exhibits the same behaiviour as
before, using the DatabaseSettings class.
Similar changes have been made to other singletons such
as ConfigSettings.
All classes that have access to a dsi now use the
getInstance( dsi ) methods - other classes use the
getInstance() methods.
In addition the patches to AbstractChildObject and
AbstractEditableObject include some fixes to cope with
transactions hanging.