[jboss-svn-commits] JBoss Common SVN: r4709 - in shrinkwrap/trunk/extension-classloader/src: test/java/org/jboss/shrinkwrap/classloader and 1 other directory.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Fri Jul 9 06:22:02 EDT 2010


Author: aslak
Date: 2010-07-09 06:22:02 -0400 (Fri, 09 Jul 2010)
New Revision: 4709

Modified:
   shrinkwrap/trunk/extension-classloader/src/main/java/org/jboss/shrinkwrap/classloader/ShrinkWrapClassLoader.java
   shrinkwrap/trunk/extension-classloader/src/test/java/org/jboss/shrinkwrap/classloader/ShrinkWrapClassLoaderTestCase.java
Log:
SHRINKWRAP-161 Clear reference to the VirtualFiles and ExecutorServices on close()


Modified: shrinkwrap/trunk/extension-classloader/src/main/java/org/jboss/shrinkwrap/classloader/ShrinkWrapClassLoader.java
===================================================================
--- shrinkwrap/trunk/extension-classloader/src/main/java/org/jboss/shrinkwrap/classloader/ShrinkWrapClassLoader.java	2010-07-09 05:02:21 UTC (rev 4708)
+++ shrinkwrap/trunk/extension-classloader/src/main/java/org/jboss/shrinkwrap/classloader/ShrinkWrapClassLoader.java	2010-07-09 10:22:02 UTC (rev 4709)
@@ -82,8 +82,7 @@
     */
    public ShrinkWrapClassLoader(final Archive<?>... archives)
    {
-      super(new URL[]
-      {});
+      super(new URL[]{});
 
       if (archives == null)
       {
@@ -102,8 +101,7 @@
     */
    public ShrinkWrapClassLoader(final ClassLoader parent, final Archive<?>... archives)
    {
-      super(new URL[]
-      {}, parent);
+      super(new URL[]{}, parent);
 
       if (archives == null)
       {
@@ -174,11 +172,13 @@
             log.warning("Could not close VFS handle: " + e);
          }
       }
-
+      vfsHandlesToClose.clear();
+      
       // Shutdown all created Executor Services.
       for (final ExecutorService executorService : executorServicesToShutdown)
       {
          executorService.shutdownNow();
       }
+      executorServicesToShutdown.clear();
    }
 }

Modified: shrinkwrap/trunk/extension-classloader/src/test/java/org/jboss/shrinkwrap/classloader/ShrinkWrapClassLoaderTestCase.java
===================================================================
--- shrinkwrap/trunk/extension-classloader/src/test/java/org/jboss/shrinkwrap/classloader/ShrinkWrapClassLoaderTestCase.java	2010-07-09 05:02:21 UTC (rev 4708)
+++ shrinkwrap/trunk/extension-classloader/src/test/java/org/jboss/shrinkwrap/classloader/ShrinkWrapClassLoaderTestCase.java	2010-07-09 10:22:02 UTC (rev 4709)
@@ -116,16 +116,27 @@
    public void shouldBeAbleToLoadClassFromArchive() throws ClassNotFoundException
    {
       // Load the test class from the CL
-      final Class<?> loadedTestClass = Class.forName(applicationClassLoaderClass.getName(), false,
+      final Class<?> loadedTestClass = Class.forName(
+            applicationClassLoaderClass.getName(), 
+            false,
             shrinkWrapClassLoader);
+      
       final ClassLoader loadedTestClassClassLoader = loadedTestClass.getClassLoader();
       log.info("Got " + loadedTestClass + " from " + loadedTestClassClassLoader);
 
       // Assertions
-      Assert.assertNotNull("Test class could not be found via the ClassLoader", loadedTestClass);
-      Assert.assertSame("Test class should have been loaded via the archive ClassLoader", shrinkWrapClassLoader,
+      Assert.assertNotNull(
+            "Test class could not be found via the ClassLoader", 
+            loadedTestClass);
+      
+      Assert.assertSame(
+            "Test class should have been loaded via the archive ClassLoader", 
+            shrinkWrapClassLoader,
             loadedTestClassClassLoader);
-      Assert.assertNotSame("Class Loaded from the CL should not be the same as the one on the appCL", loadedTestClass,
+      
+      Assert.assertNotSame(
+            "Class Loaded from the CL should not be the same as the one on the appCL", 
+            loadedTestClass,
             applicationClassLoaderClass);
 
    }
@@ -138,7 +149,9 @@
    {
 
       // Load the class as a resource
-      final URL resource = shrinkWrapClassLoader.getResource(getResourceNameOfClass(applicationClassLoaderClass));
+      final URL resource = shrinkWrapClassLoader.getResource(
+            getResourceNameOfClass(
+                  applicationClassLoaderClass));
 
       // Assertions
       Assert.assertNotNull(resource);



More information about the jboss-svn-commits mailing list