Carsten Ziegeler wrote:
Sylvain Wallez wrote:
To sum up :
- Store.TRANSIENT_STORE : used by Cocoon to store non-serializable objects
- Store.ROLE : used by Cocoon to store serializable objects
- Store.PERSISTENT_STORE : optional component that _may_ be used by in-memory implementations of Store.ROLE to delegate persistent storage.
AFAIU, JCS has its own in-memory front end to the persistent storage. In this configuration Store.ROLE will be a JCSStore and Store.PERSISTENT_STORE will have no implementation (because we don't need it).
But we still and will always need a TRANSIENT_STORE that doesn't require objects to be serializable. If JCS cannot handle this, then let's keep the current DefaultTransientStore (which extends MRUMemoryStore).
Hope this clear things a bit.
Thanks, yes!
Hmm, there is only one thing I don't like: no persistent store
in this scenario. Couldn't the persistent and the store be simply
the same?
No no: the persistent store is really an optional helper component for the main store when it needs to delegate persistency. If the main store already has the memory+disk implementation, we simply don't need it, as no other code uses it.
Ah, and one more detail: it would be good for JCS*Store source files to be in the "impl" directory.Already done :)
This is hard to follow :-)
Sylvain
-- Sylvain Wallez Anyware Technologies http://www.apache.org/~sylvain http://www.anyware-tech.com { XML, Java, Cocoon, OpenSource }*{ Training, Consulting, Projects }
