cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Christian Haul <>
Subject Re: Fixing store design (long) (was Re: CocoonForms server sizing?)
Date Sun, 07 Dec 2003 17:53:34 GMT
Sylvain Wallez wrote:
> Christian Haul wrote:

>> This is a big problem, indeed. Since many of those actually build 
>> their private cache from a source, I have started a SourceCache in the 
>> scratchpad block but got distracted :-( Still, maybe it could be 
>> useful when cleaning up the private caches.
>> The only implementation (SoftSourceCache) uses a ReferenceMap from 
>> JCCol that could at least be cleaned by the garbage collector when 
>> memory is low. Using a store would surely be better, though. But it's 
>> only a first cut :-)
> I was thinking to introduce some helper class to handle source-related 
> store entries, along the lines of 
> XSLTProcessor.TransformerHandlerAndValidity. Your SourceCache goes that 
> way, but IMO it should be "just" a helper class rather than a component. 
> Also, it manages its own cache ;-)

:-) I've chosen a component since I have anticipated different
implementations. Eg implementations could differ on how they hangle
validities. One implementation might chose to ignore validities for
example. However, by using excalibur store as back-end and
doing modifications of the cache validity at the source a helper class
is fine as well.

Just another thought on "transient": A good example for a transient
store is IMO a request attribute. Here, transient relates to the life
span of a request. The store content is present while the current
request is processed and afterwards the store is cleaned up. But this
is too Cocoon specific to be introduced into avalon :-)


View raw message