Iterator<Entry<Object, StatefulBeanContext>> it = cacheMap.entrySet().iterator();
while (it.hasNext())
{
Entry<Object, StatefulBeanContext> entry = it.next();
StatefulBeanContext centry = entry.getValue();
if (now - centry.lastUsed >= removalTimeout * 1000)
{
synchronized (centry)
{
it.remove();
}
}
}
}
List<StatefulBeanContext> beans = pm.getPassivatedBeans();
Iterator<StatefulBeanContext> it = beans.iterator();
while (it.hasNext())
{
StatefulBeanContext centry = it.next();
if (now - centry.lastUsed >= removalTimeout * 1000)
{
get(centry.getId(), false);
remove(centry.getId());
}
}
// Invoke post-removal callback
this.postRemoval();