[jboss-cvs] JBossAS SVN: r91937 - in projects/vfs/branches/dml-zip-rework/src/main/java/org/jboss/virtual: spi and 1 other directory.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Mon Aug 3 22:36:51 EDT 2009


Author: david.lloyd at jboss.com
Date: 2009-08-03 22:36:51 -0400 (Mon, 03 Aug 2009)
New Revision: 91937

Modified:
   projects/vfs/branches/dml-zip-rework/src/main/java/org/jboss/virtual/VFSUtils.java
   projects/vfs/branches/dml-zip-rework/src/main/java/org/jboss/virtual/VirtualFile.java
   projects/vfs/branches/dml-zip-rework/src/main/java/org/jboss/virtual/spi/FileSystem.java
   projects/vfs/branches/dml-zip-rework/src/main/java/org/jboss/virtual/spi/JZipFileSystem.java
   projects/vfs/branches/dml-zip-rework/src/main/java/org/jboss/virtual/spi/JavaZipFileSystem.java
   projects/vfs/branches/dml-zip-rework/src/main/java/org/jboss/virtual/spi/RealFileSystem.java
Log:
isDirectory should not throw IOException; also, add recursive delete for virtualfile

Modified: projects/vfs/branches/dml-zip-rework/src/main/java/org/jboss/virtual/VFSUtils.java
===================================================================
--- projects/vfs/branches/dml-zip-rework/src/main/java/org/jboss/virtual/VFSUtils.java	2009-08-04 02:16:30 UTC (rev 91936)
+++ projects/vfs/branches/dml-zip-rework/src/main/java/org/jboss/virtual/VFSUtils.java	2009-08-04 02:36:51 UTC (rev 91937)
@@ -557,7 +557,8 @@
     * @param root the real file to delete
     * @return {@code true} if the file was deleted
     */
-   public static boolean recursiveDelete(File root) {
+   public static boolean recursiveDelete(File root)
+   {
       boolean ok = true;
       if (root.isDirectory()) {
          final File[] files = root.listFiles();
@@ -571,4 +572,26 @@
       }
       return ok;
    }
+
+   /**
+    * Attempt to recursively delete a virtual file.
+    *
+    * @param root the virtual file to delete
+    * @return {@code true} if the file was deleted
+    */
+   public static boolean recursiveDelete(VirtualFile root) throws IOException
+   {
+      boolean ok = true;
+      if (root.isDirectory()) {
+         final List<VirtualFile> files = root.getChildren();
+         for (VirtualFile file : files)
+         {
+            ok &= recursiveDelete(file);
+         }
+         return ok && (root.delete() || ! root.exists());
+      } else {
+         ok &= root.delete() || ! root.exists();
+      }
+      return ok;
+   }
 }

Modified: projects/vfs/branches/dml-zip-rework/src/main/java/org/jboss/virtual/VirtualFile.java
===================================================================
--- projects/vfs/branches/dml-zip-rework/src/main/java/org/jboss/virtual/VirtualFile.java	2009-08-04 02:16:30 UTC (rev 91936)
+++ projects/vfs/branches/dml-zip-rework/src/main/java/org/jboss/virtual/VirtualFile.java	2009-08-04 02:36:51 UTC (rev 91937)
@@ -186,7 +186,7 @@
     * @return {@code true} if it is a directory, {@code false} otherwise
     * @throws IOException if an I/O error occurs
     */
-   public boolean isDirectory() throws IOException
+   public boolean isDirectory()
    {
       final VFS.Mount mount = VFS.instance.getMount(this);
       return mount.getFileSystem().isDirectory(mount.getMountPoint(), this);

Modified: projects/vfs/branches/dml-zip-rework/src/main/java/org/jboss/virtual/spi/FileSystem.java
===================================================================
--- projects/vfs/branches/dml-zip-rework/src/main/java/org/jboss/virtual/spi/FileSystem.java	2009-08-04 02:16:30 UTC (rev 91936)
+++ projects/vfs/branches/dml-zip-rework/src/main/java/org/jboss/virtual/spi/FileSystem.java	2009-08-04 02:36:51 UTC (rev 91937)
@@ -118,7 +118,7 @@
     * @return {@code true} if the file exists and is a directory, {@code false} otherwise
     * @throws IOException if an I/O error occurs
     */
-   boolean isDirectory(VirtualFile mountPoint, VirtualFile target) throws IOException;
+   boolean isDirectory(VirtualFile mountPoint, VirtualFile target);
 
    /**
     * Read a directory.  Returns all the simple path names (excluding "." and "..").  The returned list will be

Modified: projects/vfs/branches/dml-zip-rework/src/main/java/org/jboss/virtual/spi/JZipFileSystem.java
===================================================================
--- projects/vfs/branches/dml-zip-rework/src/main/java/org/jboss/virtual/spi/JZipFileSystem.java	2009-08-04 02:16:30 UTC (rev 91936)
+++ projects/vfs/branches/dml-zip-rework/src/main/java/org/jboss/virtual/spi/JZipFileSystem.java	2009-08-04 02:36:51 UTC (rev 91937)
@@ -193,7 +193,7 @@
       }
    }
 
-   public boolean isDirectory(VirtualFile mountPoint, VirtualFile target) throws IOException
+   public boolean isDirectory(VirtualFile mountPoint, VirtualFile target)
    {
       final ZipNode zipNode = rootNode.find(mountPoint, target);
       return zipNode != null && zipNode.entry == null;

Modified: projects/vfs/branches/dml-zip-rework/src/main/java/org/jboss/virtual/spi/JavaZipFileSystem.java
===================================================================
--- projects/vfs/branches/dml-zip-rework/src/main/java/org/jboss/virtual/spi/JavaZipFileSystem.java	2009-08-04 02:16:30 UTC (rev 91936)
+++ projects/vfs/branches/dml-zip-rework/src/main/java/org/jboss/virtual/spi/JavaZipFileSystem.java	2009-08-04 02:36:51 UTC (rev 91937)
@@ -212,7 +212,7 @@
       }
    }
 
-   public boolean isDirectory(VirtualFile mountPoint, VirtualFile target) throws IOException
+   public boolean isDirectory(VirtualFile mountPoint, VirtualFile target)
    {
       final ZipNode zipNode = rootNode.find(mountPoint, target);
       return zipNode != null && zipNode.entry == null;

Modified: projects/vfs/branches/dml-zip-rework/src/main/java/org/jboss/virtual/spi/RealFileSystem.java
===================================================================
--- projects/vfs/branches/dml-zip-rework/src/main/java/org/jboss/virtual/spi/RealFileSystem.java	2009-08-04 02:16:30 UTC (rev 91936)
+++ projects/vfs/branches/dml-zip-rework/src/main/java/org/jboss/virtual/spi/RealFileSystem.java	2009-08-04 02:36:51 UTC (rev 91937)
@@ -68,7 +68,7 @@
    }
 
    /** {@inheritDoc} */
-   public File getFile(VirtualFile mountPoint, VirtualFile target) throws IOException
+   public File getFile(VirtualFile mountPoint, VirtualFile target)
    {
       if (mountPoint.equals(target)) {
          return realRoot;
@@ -102,7 +102,7 @@
    }
 
    /** {@inheritDoc} */
-   public boolean isDirectory(VirtualFile mountPoint, VirtualFile target) throws IOException
+   public boolean isDirectory(VirtualFile mountPoint, VirtualFile target)
    {
       return getFile(mountPoint, target).isDirectory();
    }




More information about the jboss-cvs-commits mailing list