[jboss-cvs] JBossAS SVN: r60547 - in branches/Branch_4_2/ejb3/src: test/org/jboss/ejb3/test/stateful/unit and 1 other directory.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Wed Feb 14 13:05:20 EST 2007
Author: wolfc
Date: 2007-02-14 13:05:20 -0500 (Wed, 14 Feb 2007)
New Revision: 60547
Modified:
branches/Branch_4_2/ejb3/src/main/org/jboss/ejb3/Ejb3Deployment.java
branches/Branch_4_2/ejb3/src/main/org/jboss/ejb3/PersistenceUnitRegistry.java
branches/Branch_4_2/ejb3/src/test/org/jboss/ejb3/test/stateful/unit/RemoteUnitTestCase.java
Log:
EJBTHREE-875: unregistering persistence units in deployment destroy
Modified: branches/Branch_4_2/ejb3/src/main/org/jboss/ejb3/Ejb3Deployment.java
===================================================================
--- branches/Branch_4_2/ejb3/src/main/org/jboss/ejb3/Ejb3Deployment.java 2007-02-14 17:58:27 UTC (rev 60546)
+++ branches/Branch_4_2/ejb3/src/main/org/jboss/ejb3/Ejb3Deployment.java 2007-02-14 18:05:20 UTC (rev 60547)
@@ -439,6 +439,19 @@
}
}
+ private void destroyPersistenceUnits()
+ {
+ if (persistenceUnitDeployments == null) return;
+
+ for (PersistenceUnitDeployment entityDeployment : persistenceUnitDeployments)
+ {
+ if (entityDeployment != null)
+ {
+ PersistenceUnitRegistry.unregister(entityDeployment);
+ }
+ }
+ }
+
protected void initializePersistenceUnits()
throws Exception
{
@@ -498,11 +511,11 @@
{
try
{
- PersistenceUnitRegistry.unregister(entityDeployment);
if (entityDeployment != null)
{
kernelAbstraction.uninstall(entityDeployment.getKernelName());
}
+ //FIXME: entityDeployment.removeDependencies(...)
}
catch (Exception e)
{
@@ -531,6 +544,8 @@
public void destroy() throws Exception
{
+ destroyPersistenceUnits();
+
undeploy();
PolicyConfigurationFactory pcFactory = PolicyConfigurationFactory.getPolicyConfigurationFactory();
Modified: branches/Branch_4_2/ejb3/src/main/org/jboss/ejb3/PersistenceUnitRegistry.java
===================================================================
--- branches/Branch_4_2/ejb3/src/main/org/jboss/ejb3/PersistenceUnitRegistry.java 2007-02-14 17:58:27 UTC (rev 60546)
+++ branches/Branch_4_2/ejb3/src/main/org/jboss/ejb3/PersistenceUnitRegistry.java 2007-02-14 18:05:20 UTC (rev 60547)
@@ -38,18 +38,26 @@
public static void register(PersistenceUnitDeployment container)
{
- if (persistenceUnits.contains(container.getKernelName())) throw new RuntimeException("Persistence Unit is already registered: " + container.getKernelName());
- persistenceUnits.put(container.getKernelName(), container);
+ String kernelName = container.getKernelName();
+ if (persistenceUnits.contains(kernelName)) throw new RuntimeException("Persistence Unit is already registered: " + kernelName);
+ log.trace("register " + kernelName);
+ persistenceUnits.put(kernelName, container);
}
public static void unregister(PersistenceUnitDeployment container)
{
- persistenceUnits.remove(container.getKernelName());
+ String kernelName = container.getKernelName();
+ log.trace("unregister " + kernelName);
+ persistenceUnits.remove(kernelName);
}
public static PersistenceUnitDeployment getPersistenceUnit(String kernelName)
{
- return persistenceUnits.get(kernelName);
+ PersistenceUnitDeployment unit = persistenceUnits.get(kernelName);
+ log.trace("get " + kernelName + " = " + unit);
+ if(unit == null)
+ throw new IllegalStateException("Unable to find persistence unit " + kernelName);
+ return unit;
}
public static Collection<PersistenceUnitDeployment> getPersistenceUnits()
Modified: branches/Branch_4_2/ejb3/src/test/org/jboss/ejb3/test/stateful/unit/RemoteUnitTestCase.java
===================================================================
--- branches/Branch_4_2/ejb3/src/test/org/jboss/ejb3/test/stateful/unit/RemoteUnitTestCase.java 2007-02-14 17:58:27 UTC (rev 60546)
+++ branches/Branch_4_2/ejb3/src/test/org/jboss/ejb3/test/stateful/unit/RemoteUnitTestCase.java 2007-02-14 18:05:20 UTC (rev 60547)
@@ -578,7 +578,7 @@
{
EntityFacade stateful = (EntityFacade)getInitialContext().lookup("EntityFacadeBean/remote");
assertNotNull(stateful);
- stateful.createEntity("Kalin");
+ stateful.createEntity("Kalin TestDestroy");
try
{
More information about the jboss-cvs-commits
mailing list