You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by rm...@apache.org on 2014/06/12 13:24:02 UTC
svn commit: r1602126 -
/tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/core/stateful/StatefulContainer.java
Author: rmannibucau
Date: Thu Jun 12 11:24:01 2014
New Revision: 1602126
URL: http://svn.apache.org/r1602126
Log:
making stateful cache filter not an anonymous class
Modified:
tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/core/stateful/StatefulContainer.java
Modified: tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/core/stateful/StatefulContainer.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/core/stateful/StatefulContainer.java?rev=1602126&r1=1602125&r2=1602126&view=diff
==============================================================================
--- tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/core/stateful/StatefulContainer.java (original)
+++ tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/core/stateful/StatefulContainer.java Thu Jun 12 11:24:01 2014
@@ -74,6 +74,7 @@ import javax.naming.NamingException;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.transaction.Transaction;
+import java.io.Serializable;
import java.lang.reflect.Method;
import java.rmi.NoSuchObjectException;
import java.rmi.RemoteException;
@@ -283,12 +284,7 @@ public class StatefulContainer implement
beanContext.setContainerData(null);
if (!containsExtendedPersistenceContext(beanContext)) {
- cache.removeAll(new CacheFilter<Instance>() {
- @Override
- public boolean matches(final Instance instance) {
- return beanContext == instance.beanContext;
- }
- });
+ cache.removeAll(new BeanContextFilter(beanContext.getId()));
}
}
@@ -1234,4 +1230,17 @@ public class StatefulContainer implement
}
}
+
+ public static class BeanContextFilter implements CacheFilter<Instance>, Serializable {
+ private final String id;
+
+ public BeanContextFilter(final String id) {
+ this.id = id;
+ }
+
+ @Override
+ public boolean matches(final Instance instance) {
+ return instance.beanContext.getId().equals(id);
+ }
+ }
}