Hello,

I'm committing the passivation caches for stateful and entity beans. 
Many new classes, few modifications to the instance int'rs and to the entity
synchronization int'r.

The caches required some utility classes (under org.jboss.util), in
particular FYI:

1) A priority queue (Heap)
2) A CachePolicy interface that allow different implementation of cache
policies (LRU, MRU, Random, etc)
3) A LRUCachePolicy implementation that can be (re)used by who is interested
in having such a caching policy (last arguments were PreparedStatements and
Security stuff)
4) A couple TimerQueue - TimerTask that allows you to create TimerTasks that
do a particular job at certain times; the task can be periodic or one-shot,
and can be canceled from the queue. The queue executes the tasks when they
expire and all the tasks are executed in a single thread.
5) A worker queue that executes Executable tasks in a separate thread (in my
case used for the passivation).

About the bean caches, there are 2 cache policies implemented: the LRU one
and the NoPassivation one.

I also modified the standardjboss.xml file so that now the containers have
by default the passivating caches turned on.

I'll commit in few days also the EJX modifications to generate the new
jboss.xml files; for the meanwhile I ask your help to update the existing
ones (eg in jbosstest jars) following the new standardjboss.xml; if you
specify the tag:

<container-cache-conf>

then it is mandatory to have the tag 

<CachePolicy>...</CachePolicy>

All the other tags of the cache configuration are optionals (ie capacities
and cache-policy-conf).

It will probably take a while, wait for a "done" message.
I will also post further info on the cache implementation, give me some
time.

Enjoy

Simon

Reply via email to