[jboss-cvs] JBossAS SVN: r103060 - projects/jboss-cl/trunk/classloading-vfs/src/main/java/org/jboss/classloading/plugins/vfs.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Fri Mar 26 14:26:28 EDT 2010


Author: alesj
Date: 2010-03-26 14:26:28 -0400 (Fri, 26 Mar 2010)
New Revision: 103060

Modified:
   projects/jboss-cl/trunk/classloading-vfs/src/main/java/org/jboss/classloading/plugins/vfs/VFSResourceVisitor.java
Log:
[JBCL-158]; expose current root.

Modified: projects/jboss-cl/trunk/classloading-vfs/src/main/java/org/jboss/classloading/plugins/vfs/VFSResourceVisitor.java
===================================================================
--- projects/jboss-cl/trunk/classloading-vfs/src/main/java/org/jboss/classloading/plugins/vfs/VFSResourceVisitor.java	2010-03-26 18:13:05 UTC (rev 103059)
+++ projects/jboss-cl/trunk/classloading-vfs/src/main/java/org/jboss/classloading/plugins/vfs/VFSResourceVisitor.java	2010-03-26 18:26:28 UTC (rev 103060)
@@ -76,6 +76,9 @@
    /** The resource filter */
    private ResourceFilter recurseFilter;
 
+   /** The current root */
+   private static ThreadLocal<VirtualFile> currentRoot = new ThreadLocal<VirtualFile>();
+
    /**
     * Visit the resources
     * 
@@ -98,8 +101,16 @@
          {
             if (urls == null || urls.length == 0 || matchRootWithUrls(root, urls))
             {
-               vfsVisitor.setRoot(root);
-               root.visit(vfsVisitor);
+               currentRoot.set(root);
+               try
+               {
+                  vfsVisitor.setRoot(root);
+                  root.visit(vfsVisitor);
+               }
+               finally
+               {
+                  currentRoot.remove();   
+               }
             }
          }
          catch (Exception e)
@@ -110,6 +121,16 @@
    }
 
    /**
+    * Get the current root.
+    *
+    * @return the current root
+    */
+   public static VirtualFile getCurrentRoot()
+   {
+      return currentRoot.get();
+   }
+
+   /**
     * Match root with urls.
     *
     * @param root one of the roots




More information about the jboss-cvs-commits mailing list