[jboss-cvs] JBossAS SVN: r75212 - in projects/vfs/trunk/src: test/java/org/jboss/test/virtual/test and 1 other directory.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Mon Jun 30 07:40:20 EDT 2008
Author: alesj
Date: 2008-06-30 07:40:20 -0400 (Mon, 30 Jun 2008)
New Revision: 75212
Modified:
projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/file/FileHandler.java
projects/vfs/trunk/src/test/java/org/jboss/test/virtual/test/FileVFSUnitTestCase.java
Log:
[JBVFS-45] fix directory deletion - use Files recursion.
Modified: projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/file/FileHandler.java
===================================================================
--- projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/file/FileHandler.java 2008-06-30 11:35:13 UTC (rev 75211)
+++ projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/context/file/FileHandler.java 2008-06-30 11:40:20 UTC (rev 75212)
@@ -35,6 +35,7 @@
import java.util.List;
import java.util.Map;
+import org.jboss.util.file.Files;
import org.jboss.virtual.plugins.context.AbstractURLHandler;
import org.jboss.virtual.plugins.context.StructuredVirtualFileHandler;
import org.jboss.virtual.spi.VirtualFileHandler;
@@ -127,6 +128,11 @@
return getFile().lastModified();
}
+ public boolean exists() throws IOException
+ {
+ return getFile().exists();
+ }
+
@Override
public long getSize()
{
@@ -156,21 +162,18 @@
if (exists == false)
return false;
- if (f.delete() == false)
+ if (Files.delete(f) == false)
{
long endOfGrace = System.currentTimeMillis() + gracePeriod;
while(System.currentTimeMillis() < endOfGrace)
{
- boolean done = f.delete();
+ boolean done = Files.delete(f);
if (done)
{
childCache.remove(f.getName());
return true;
}
-
- if (f.isDirectory())
- return false;
-
+
try
{
Thread.sleep(100);
Modified: projects/vfs/trunk/src/test/java/org/jboss/test/virtual/test/FileVFSUnitTestCase.java
===================================================================
--- projects/vfs/trunk/src/test/java/org/jboss/test/virtual/test/FileVFSUnitTestCase.java 2008-06-30 11:35:13 UTC (rev 75211)
+++ projects/vfs/trunk/src/test/java/org/jboss/test/virtual/test/FileVFSUnitTestCase.java 2008-06-30 11:40:20 UTC (rev 75212)
@@ -1460,10 +1460,16 @@
assertTrue(tmpRoot + ".delete()", vfs.getRoot().delete());
tmpRoot.mkdir();
- // non-empty directory - delete() not
- File tmp = File.createTempFile("testFileDelete", ".jar", tmpRoot);
- assertFalse(tmpRoot + ".delete() == false", vfs.getRoot().delete());
+ // non-empty directory - delete()
+ File tmp = new File(tmpRoot, "testFileDelete.jar");
+ assertTrue(tmp.mkdir());
+ File tmp2 = File.createTempFile("testFileDelete2", ".jar", tmp);
+ assertTrue(tmp2.exists());
+ VirtualFile tmpDeletable = VFS.getRoot(tmp.toURI());
+ assertTrue(tmpRoot + ".delete() == false", tmpDeletable.delete());
+ // create child to vfs
+ assertTrue(tmp.mkdir());
// children() exist
List<VirtualFile> children = vfs.getChildren();
assertTrue(tmpRoot + ".getChildren().size() == 1", children.size() == 1);
More information about the jboss-cvs-commits
mailing list