[jboss-dev-forums] [Design of EJB 3.0] - Re: Redesign extended persistence context
bstansberry@jboss.com
do-not-reply at jboss.com
Mon Oct 8 13:41:35 EDT 2007
I just posted some prototype stuff related to getting Carlo's stuff to work well with clustering at https://svn.jboss.org/repos/jbossas/projects/ejb3/branches/cluster-dev/ejb3-cache
Carlo, here are some key points:
1) Cache has a couple methods added re: clustering support that we discussed this am. I made no changes yet based on our discussion.
2) PassivationManager has methods for replication callbacks.
3) PassivationGroup et al renamed SerializationGroup, since it's for both passivation and replication.
4) SerializationGroup has pretty significant API changes, mostly related to exposing stuff from the impl. I needed this so I could use the impl in my cache versions (see #6 below) without breaking your cache versions.
5) IdentityObjectStore. This is the key thing. Your SimplePassivatingCacheImpl has a hash map for an in-memory store, and then an inject edObjectStore for persistence. JBoss Cache combines the in-memory and persistent store. I need an abstraction that can handle that; this interface is that abstraction. SimpleIntegratedObjectStore is an impl of the interface that is suitable for use in a non-clustered cache. The o.j.e.test.distributed.MockJBCIntegratedObjectStore is a mock impl that behaves the way an interface to JBC would.
6) SimplePassivatingCache2/GroupedPassivatingCacheImpl2. Analogues to your classes, but using IntegratedObjectStore instead of ObjectStore. I tried to change your classes as little as possible.
7) New Cacheable interface. Exposes the inUse and lastUsed properties. Trying to get an analogue to your SimplePassivatingCache.Entry to work with the IntegratedObjectStore was proving to be a bridge too far. So I assumed the StatefulBeanContext would expose the Cacheable interface, allowing me to get rid of the need for a wrapper object like SimplePassivatingCache.Entry. SBC exposes the methods now and I assumed they were needed. We we're IMing today about the general "inUse" question, so that discussion impacts this.
8) Tests. Non-existent right now; hope to do at least a basic one this PM. Your tests still pass though.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4092689#4092689
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4092689
More information about the jboss-dev-forums
mailing list