On 5/18/11 11:06 AM, Manik Surtani wrote:

>
> 1) Class loader per session/cache.
>
> I like Jason/Sanne/Trustin's suggestions of a session-like contract, and 
> specifically I think this is best achieved as a delegate to a cache, again as 
> suggested elsewhere by Pete, etc.  E.g.,
>
>       Cache<?, ?>  myCache = cacheManager.getCache("myCache", myClassLoader);

-snip-

I would recommend leaving this open to store other per-session 
configuration values (perhaps with a builder), and some of them mutable.
This will allow you to completely eliminate the ThreadLocal context 
stuff used today which is both faster and more robust (the gc will clean 
up the state for you).

> 2) Class loader per invocation.
>

If this "session" notion has some mutable values, you could also make CL 
mutable:

cacheSession.setClassLoader(blah);
cacheSession.setFlags(FORCE_WRITE_LOCK)

cacheSession.put/get
repeat

>
> 3) Can all OSGi requirements be handled by (1)? I would guess so, from what I 
> have read here, since the class loader is explicitly passed in when getting a 
> handle on a cache.

Definitely.

-- 
Jason T. Greene
JBoss, a division of Red Hat
_______________________________________________
infinispan-dev mailing list
infinispan-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/infinispan-dev

Reply via email to