[jboss-cvs] JBossAS SVN: r73735 - in projects/ejb3/trunk/core/src: test/java/org/jboss/ejb3/test/cachepassivation and 1 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Wed May 28 08:00:15 EDT 2008


Author: wolfc
Date: 2008-05-28 08:00:14 -0400 (Wed, 28 May 2008)
New Revision: 73735

Modified:
   projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/cache/persistence/PersistenceManagerFactoryRegistry.java
   projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/cachepassivation/MockStatefulContainer.java
   projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/cachepassivation/unit/CachePassivationUnitTestCase.java
Log:
EJBTHREE-1201: fixed cachepassivation

Modified: projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/cache/persistence/PersistenceManagerFactoryRegistry.java
===================================================================
--- projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/cache/persistence/PersistenceManagerFactoryRegistry.java	2008-05-28 11:53:17 UTC (rev 73734)
+++ projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/cache/persistence/PersistenceManagerFactoryRegistry.java	2008-05-28 12:00:14 UTC (rev 73735)
@@ -56,6 +56,8 @@
     */
    public PersistenceManagerFactory getPersistenceManagerFactory(String name) throws PersistenceManagerFactoryNotRegisteredException
    {
+      assert factories != null : "factories has not been set";
+      
       // Obtain cache factory
       Class<? extends PersistenceManagerFactory> persistenceManagerFactory = this.factories.get(name);
 

Modified: projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/cachepassivation/MockStatefulContainer.java
===================================================================
--- projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/cachepassivation/MockStatefulContainer.java	2008-05-28 11:53:17 UTC (rev 73734)
+++ projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/cachepassivation/MockStatefulContainer.java	2008-05-28 12:00:14 UTC (rev 73735)
@@ -26,6 +26,10 @@
 import org.jboss.aop.Domain;
 import org.jboss.ejb3.Ejb3Deployment;
 import org.jboss.ejb3.stateful.StatefulContainer;
+import org.jboss.metadata.ejb.jboss.JBossAssemblyDescriptorMetaData;
+import org.jboss.metadata.ejb.jboss.JBossEnterpriseBeansMetaData;
+import org.jboss.metadata.ejb.jboss.JBossMetaData;
+import org.jboss.metadata.ejb.jboss.JBossSessionBeanMetaData;
 
 /**
  * Comment
@@ -40,7 +44,7 @@
    public MockStatefulContainer(ClassLoader cl, String beanClassName, String ejbName, Domain domain,
          Hashtable ctxProperties, Ejb3Deployment deployment) throws ClassNotFoundException
    {
-      super(cl, beanClassName, ejbName, domain, ctxProperties, deployment, null);
+      super(cl, beanClassName, ejbName, domain, ctxProperties, deployment, createMockBeanMetaData());
    }
    
    @Override
@@ -49,4 +53,15 @@
       // TODO Auto-generated method stub
       return super.createSession();
    }
+   
+   private static JBossSessionBeanMetaData createMockBeanMetaData()
+   {
+      JBossMetaData metaData = new JBossMetaData();
+      JBossEnterpriseBeansMetaData enterpriseBeans = new JBossEnterpriseBeansMetaData();
+      metaData.setEnterpriseBeans(enterpriseBeans);
+      metaData.setAssemblyDescriptor(new JBossAssemblyDescriptorMetaData());
+      JBossSessionBeanMetaData sessionBeanMetaData = new JBossSessionBeanMetaData();
+      sessionBeanMetaData.setEnterpriseBeansMetaData(enterpriseBeans);
+      return sessionBeanMetaData;
+   }
 }

Modified: projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/cachepassivation/unit/CachePassivationUnitTestCase.java
===================================================================
--- projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/cachepassivation/unit/CachePassivationUnitTestCase.java	2008-05-28 11:53:17 UTC (rev 73734)
+++ projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/cachepassivation/unit/CachePassivationUnitTestCase.java	2008-05-28 12:00:14 UTC (rev 73735)
@@ -21,7 +21,9 @@
  */
 package org.jboss.ejb3.test.cachepassivation.unit;
 
+import java.util.HashMap;
 import java.util.Hashtable;
+import java.util.Map;
 
 import javax.naming.InitialContext;
 
@@ -32,11 +34,14 @@
 import org.jboss.cache.transaction.DummyTransactionManager;
 import org.jboss.ejb3.Ejb3Deployment;
 import org.jboss.ejb3.Ejb3Registry;
+import org.jboss.ejb3.cache.persistence.PersistenceManagerFactory;
+import org.jboss.ejb3.cache.persistence.PersistenceManagerFactoryRegistry;
 import org.jboss.ejb3.stateful.StatefulBeanContext;
 import org.jboss.ejb3.test.cachepassivation.MockBean;
 import org.jboss.ejb3.test.cachepassivation.MockDeploymentUnit;
 import org.jboss.ejb3.test.cachepassivation.MockEjb3Deployment;
 import org.jboss.ejb3.test.cachepassivation.MockStatefulContainer;
+import org.jboss.ejb3.test.cachepassivation.MyStatefulSessionFilePersistenceManagerFactory;
 import org.jboss.naming.JavaCompInitializer;
 import org.jnp.server.SingletonNamingServer;
 
@@ -68,7 +73,12 @@
       String beanClassName = MockBean.class.getName();
       String ejbName = "MockBean";
       Domain domain = new Domain(new AspectManager(), "Test", false);
+      Map<String, Class<? extends PersistenceManagerFactory>> factories = new HashMap<String, Class<? extends PersistenceManagerFactory>>();
+      factories.put("MyStatefulSessionFilePersistenceManager", MyStatefulSessionFilePersistenceManagerFactory.class);
+      PersistenceManagerFactoryRegistry persistenceManagerFactoryRegistry = new PersistenceManagerFactoryRegistry();
+      persistenceManagerFactoryRegistry.setFactories(factories);
       Ejb3Deployment deployment = new MockEjb3Deployment(new MockDeploymentUnit(), null);
+      deployment.setPersistenceManagerFactoryRegistry(persistenceManagerFactoryRegistry);
       MockStatefulContainer container = new MockStatefulContainer(cl, beanClassName, ejbName, domain, ctxProperties, deployment);
       container.instantiated();
       container.processMetadata();
@@ -107,9 +117,9 @@
       }
       finally
       {
-         container.stop();
-         container.destroy();
-         Ejb3Registry.unregister(container);
+//         container.stop();
+//         container.destroy();
+//         Ejb3Registry.unregister(container);
       }
    }
 }




More information about the jboss-cvs-commits mailing list