You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by db...@apache.org on 2006/11/08 00:54:50 UTC

svn commit: r472337 - in /incubator/openejb/trunk/openejb3/server/openejb-ejbd/src: main/java/org/apache/openejb/server/ejbd/CallContext.java test/java/org/apache/openejb/RemoteiTest.java

Author: dblevins
Date: Tue Nov  7 15:54:49 2006
New Revision: 472337

URL: http://svn.apache.org/viewvc?view=rev&rev=472337
Log:
Rewrote CallContext slightly.  Added back the cmp tests

Modified:
    incubator/openejb/trunk/openejb3/server/openejb-ejbd/src/main/java/org/apache/openejb/server/ejbd/CallContext.java
    incubator/openejb/trunk/openejb3/server/openejb-ejbd/src/test/java/org/apache/openejb/RemoteiTest.java

Modified: incubator/openejb/trunk/openejb3/server/openejb-ejbd/src/main/java/org/apache/openejb/server/ejbd/CallContext.java
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/server/openejb-ejbd/src/main/java/org/apache/openejb/server/ejbd/CallContext.java?view=diff&rev=472337&r1=472336&r2=472337
==============================================================================
--- incubator/openejb/trunk/openejb3/server/openejb-ejbd/src/main/java/org/apache/openejb/server/ejbd/CallContext.java (original)
+++ incubator/openejb/trunk/openejb3/server/openejb-ejbd/src/main/java/org/apache/openejb/server/ejbd/CallContext.java Tue Nov  7 15:54:49 2006
@@ -17,85 +17,63 @@
 package org.apache.openejb.server.ejbd;
 
 import org.apache.openejb.DeploymentInfo;
-
 import org.apache.openejb.client.EJBRequest;
 
-import org.apache.openejb.util.FastThreadLocal;
+import java.util.HashMap;
 
 public class CallContext {
 
-    protected static final FastThreadLocal threads = new FastThreadLocal();
-
-    protected DeploymentInfo deploymentInfo;
-
-    protected EJBRequest request;
+    private static final ThreadLocal threads = new ThreadLocal();
+    private final HashMap<Class, Object> data = new HashMap();
 
     public CallContext() {
-
     }
 
     public void reset() {
+        data.clear();
+    }
 
-        deploymentInfo = null;
-
-        request = null;
+    public <T> T get(Class<T> type) {
+        return (T)data.get(type);
+    }
 
+    public <T> T set(Class<T> type, T value) {
+        return (T) data.put(type, value);
     }
 
     public DeploymentInfo getDeploymentInfo() {
-
-        return deploymentInfo;
-
+        return get(DeploymentInfo.class);
     }
 
     public void setDeploymentInfo(DeploymentInfo info) {
-
-        deploymentInfo = info;
-
+        set(DeploymentInfo.class, info);
     }
 
     public EJBRequest getEJBRequest() {
-
-        return request;
-
+        return get(EJBRequest.class);
     }
 
     public void setEJBRequest(EJBRequest request) {
-
-        this.request = request;
-
+        set(EJBRequest.class, request);
     }
 
     public static void setCallContext(CallContext ctx) {
-
         if (ctx == null) {
-
             ctx = (CallContext) threads.get();
-
             if (ctx != null) ctx.reset();
-
         } else {
-
             threads.set(ctx);
-
         }
-
     }
 
     public static CallContext getCallContext() {
-
         CallContext ctx = (CallContext) threads.get();
-
         if (ctx == null) {
-
             ctx = new CallContext();
-
             threads.set(ctx);
-
         }
 
         return ctx;
-
     }
 
 }

Modified: incubator/openejb/trunk/openejb3/server/openejb-ejbd/src/test/java/org/apache/openejb/RemoteiTest.java
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/server/openejb-ejbd/src/test/java/org/apache/openejb/RemoteiTest.java?view=diff&rev=472337&r1=472336&r2=472337
==============================================================================
--- incubator/openejb/trunk/openejb3/server/openejb-ejbd/src/test/java/org/apache/openejb/RemoteiTest.java (original)
+++ incubator/openejb/trunk/openejb3/server/openejb-ejbd/src/test/java/org/apache/openejb/RemoteiTest.java Tue Nov  7 15:54:49 2006
@@ -21,6 +21,7 @@
 import junit.framework.TestSuite;
 import org.apache.openejb.test.TestManager;
 import org.apache.openejb.test.entity.bmp.BmpTestSuite;
+import org.apache.openejb.test.entity.cmp.CmpTestSuite;
 import org.apache.openejb.test.stateful.StatefulTestSuite;
 import org.apache.openejb.test.stateless.StatelessTestSuite;
 import org.apache.openejb.server.Server;
@@ -58,7 +59,7 @@
         suite.addTest(StatefulTestSuite.suite());
         suite.addTest(BmpTestSuite.suite());
         // TODO: The CmpTestSuite deadlocks intellij for some reason.
-//        suite.addTest(CmpTestSuite.suite());
+        suite.addTest(CmpTestSuite.suite());
         return suite;
     }