Author: rmannibucau
Date: Tue Dec  4 12:52:18 2012
New Revision: 1416919

URL: http://svn.apache.org/viewvc?rev=1416919&view=rev
Log:
fixing AutoDeployerTest + better destroying of OpenEjbContainer (mainly cdi 
context)

Modified:
    
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/OpenEjbContainer.java
    
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/AutoDeployer.java
    
openejb/trunk/openejb/container/openejb-core/src/test/java/org/apache/openejb/config/AutoDeployerTest.java

Modified: 
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/OpenEjbContainer.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/OpenEjbContainer.java?rev=1416919&r1=1416918&r2=1416919&view=diff
==============================================================================
--- 
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/OpenEjbContainer.java
 (original)
+++ 
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/OpenEjbContainer.java
 Tue Dec  4 12:52:18 2012
@@ -153,11 +153,23 @@ public class OpenEjbContainer extends EJ
         } catch (NamingException e) {
             throw new IllegalStateException(e);
         }
+
+        final Assembler assembler = 
SystemInstance.get().getComponent(Assembler.class);
+        for (AppInfo info : assembler.getDeployedApplications()) {
+            try {
+                assembler.destroyApplication(info);
+            } catch (UndeployException e) {
+                logger.error(e.getMessage(), e);
+            }
+        }
+
         try {
             stopContexts(webBeanContext.getContextsService(), servletContext, 
session);
         } catch (Exception e) {
             logger.warning("can't stop all CDI contexts", e);
         }
+
+        logger.info("Destroying OpenEJB container");
         OpenEJB.destroy();
         instance = null;
     }

Modified: 
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/AutoDeployer.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/AutoDeployer.java?rev=1416919&r1=1416918&r2=1416919&view=diff
==============================================================================
--- 
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/AutoDeployer.java
 (original)
+++ 
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/config/AutoDeployer.java
 Tue Dec  4 12:52:18 2012
@@ -16,10 +16,6 @@
  */
 package org.apache.openejb.config;
 
-import org.apache.openejb.NoSuchApplicationException;
-import org.apache.openejb.OpenEJBException;
-import org.apache.openejb.UndeployException;
-import org.apache.openejb.assembler.DeployerEjb;
 import org.apache.openejb.assembler.classic.AppInfo;
 import org.apache.openejb.assembler.classic.Assembler;
 import org.apache.openejb.assembler.classic.event.ContainerSystemPostCreate;
@@ -46,8 +42,6 @@ import java.util.Timer;
 import java.util.TimerTask;
 import java.util.concurrent.TimeUnit;
 
-import static org.apache.openejb.loader.ProvisioningUtil.realLocation;
-
 /**
  * @version $Rev$ $Date$
  */
@@ -241,7 +235,7 @@ public class AutoDeployer {
     }
 
     private FileInfo oldInfo(final File file) {
-        return (FileInfo) files.get(file.getAbsolutePath());
+        return files.get(file.getAbsolutePath());
     }
 
     /**

Modified: 
openejb/trunk/openejb/container/openejb-core/src/test/java/org/apache/openejb/config/AutoDeployerTest.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/test/java/org/apache/openejb/config/AutoDeployerTest.java?rev=1416919&r1=1416918&r2=1416919&view=diff
==============================================================================
--- 
openejb/trunk/openejb/container/openejb-core/src/test/java/org/apache/openejb/config/AutoDeployerTest.java
 (original)
+++ 
openejb/trunk/openejb/container/openejb-core/src/test/java/org/apache/openejb/config/AutoDeployerTest.java
 Tue Dec  4 12:52:18 2012
@@ -23,7 +23,9 @@ import org.apache.openejb.loader.Files;
 import org.apache.openejb.loader.IO;
 import org.apache.openejb.loader.SystemInstance;
 import org.apache.openejb.util.Archives;
+import org.junit.After;
 import org.junit.Assert;
+import org.junit.Before;
 import org.junit.Ignore;
 import org.junit.Test;
 
@@ -46,6 +48,15 @@ import java.util.concurrent.locks.Reentr
  * @version $Rev$ $Date$
  */
 public class AutoDeployerTest extends Assert {
+    @Before
+    @After
+    public void stopAutoDeployer() {
+        final AutoDeployer autoDeployer = 
SystemInstance.get().getComponent(AutoDeployer.class);
+        if (autoDeployer != null) {
+            autoDeployer.stop();
+        }
+        SystemInstance.reset();
+    }
 
     @Test
     public void test() throws Exception {
@@ -145,10 +156,13 @@ public class AutoDeployerTest extends As
         assertFalse(Orange.deployed);
 
         final File deployed = Files.path(apps, "colors.ear");
+        deployed.deleteOnExit();
 
         // Hot deploy the EAR
         final File ear = createEar(tmpdir, Orange.class, State.class);
+        ear.deleteOnExit();
         IO.copy(ear, deployed);
+        assertTrue(deployed.exists());
 
         Orange.state.waitForChange(1, TimeUnit.MINUTES);
 


Reply via email to