You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by gg...@apache.org on 2011/10/11 22:24:43 UTC
svn commit: r1182074 - in /commons/proper/vfs/trunk/core/src:
main/java/org/apache/commons/vfs2/ main/java/org/apache/commons/vfs2/impl/
main/java/org/apache/commons/vfs2/provider/
test/java/org/apache/commons/vfs2/test/
Author: ggregory
Date: Tue Oct 11 20:24:42 2011
New Revision: 1182074
URL: http://svn.apache.org/viewvc?rev=1182074&view=rev
Log:
[VFS-367] Add APIs FileObject isFile(), FileObject isFolder(), and FileName isFile()
Modified:
commons/proper/vfs/trunk/core/src/main/java/org/apache/commons/vfs2/FileObject.java
commons/proper/vfs/trunk/core/src/main/java/org/apache/commons/vfs2/impl/DecoratedFileObject.java
commons/proper/vfs/trunk/core/src/main/java/org/apache/commons/vfs2/provider/AbstractFileObject.java
commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs2/test/FileSystemManagerFactoryTestCase.java
commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs2/test/ProviderReadTests.java
commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs2/test/ProviderWriteTests.java
commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs2/test/VerifyingFileSelector.java
Modified: commons/proper/vfs/trunk/core/src/main/java/org/apache/commons/vfs2/FileObject.java
URL: http://svn.apache.org/viewvc/commons/proper/vfs/trunk/core/src/main/java/org/apache/commons/vfs2/FileObject.java?rev=1182074&r1=1182073&r2=1182074&view=diff
==============================================================================
--- commons/proper/vfs/trunk/core/src/main/java/org/apache/commons/vfs2/FileObject.java (original)
+++ commons/proper/vfs/trunk/core/src/main/java/org/apache/commons/vfs2/FileObject.java Tue Oct 11 20:24:42 2011
@@ -342,6 +342,16 @@ public interface FileObject
*/
public boolean isFile() throws FileSystemException;
+ /**
+ * Checks if this file is a folder.
+ *
+ * @return true if this file is a folder.
+ * @throws FileSystemException if an error occurs.
+ * @see #getType()
+ * @see FileType#FOLDER
+ */
+ public boolean isFolder() throws FileSystemException;
+
// --- OPERATIONS --
/**
Modified: commons/proper/vfs/trunk/core/src/main/java/org/apache/commons/vfs2/impl/DecoratedFileObject.java
URL: http://svn.apache.org/viewvc/commons/proper/vfs/trunk/core/src/main/java/org/apache/commons/vfs2/impl/DecoratedFileObject.java?rev=1182074&r1=1182073&r2=1182074&view=diff
==============================================================================
--- commons/proper/vfs/trunk/core/src/main/java/org/apache/commons/vfs2/impl/DecoratedFileObject.java (original)
+++ commons/proper/vfs/trunk/core/src/main/java/org/apache/commons/vfs2/impl/DecoratedFileObject.java Tue Oct 11 20:24:42 2011
@@ -190,6 +190,11 @@ public class DecoratedFileObject impleme
return decoratedFileObject.isFile();
}
+ public boolean isFolder() throws FileSystemException
+ {
+ return decoratedFileObject.isFolder();
+ }
+
@Override
public String toString()
{
Modified: commons/proper/vfs/trunk/core/src/main/java/org/apache/commons/vfs2/provider/AbstractFileObject.java
URL: http://svn.apache.org/viewvc/commons/proper/vfs/trunk/core/src/main/java/org/apache/commons/vfs2/provider/AbstractFileObject.java?rev=1182074&r1=1182073&r2=1182074&view=diff
==============================================================================
--- commons/proper/vfs/trunk/core/src/main/java/org/apache/commons/vfs2/provider/AbstractFileObject.java (original)
+++ commons/proper/vfs/trunk/core/src/main/java/org/apache/commons/vfs2/provider/AbstractFileObject.java Tue Oct 11 20:24:42 2011
@@ -523,6 +523,19 @@ public abstract class AbstractFileObject
}
/**
+ * Checks if this file is a folder by using its file type.
+ *
+ * @return true if this file is a regular file.
+ * @throws FileSystemException
+ * @see #getType()
+ * @see FileType#FOLDER
+ */
+ public boolean isFolder() throws FileSystemException {
+ // Use equals instead of == to avoid any class loader worries.
+ return FileType.FOLDER.equals(this.getType());
+ }
+
+ /**
* Determines if this file can be read.
* @return true if the file is a hidden file, false otherwise.
* @throws FileSystemException if an error occurs.
Modified: commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs2/test/FileSystemManagerFactoryTestCase.java
URL: http://svn.apache.org/viewvc/commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs2/test/FileSystemManagerFactoryTestCase.java?rev=1182074&r1=1182073&r2=1182074&view=diff
==============================================================================
--- commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs2/test/FileSystemManagerFactoryTestCase.java (original)
+++ commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs2/test/FileSystemManagerFactoryTestCase.java Tue Oct 11 20:24:42 2011
@@ -53,6 +53,7 @@ public class FileSystemManagerFactoryTes
assertNotNull(file);
assertTrue(file.exists());
assertSame(FileType.FOLDER, file.getType());
+ assertTrue(file.isFolder());
}
}
Modified: commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs2/test/ProviderReadTests.java
URL: http://svn.apache.org/viewvc/commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs2/test/ProviderReadTests.java?rev=1182074&r1=1182073&r2=1182074&view=diff
==============================================================================
--- commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs2/test/ProviderReadTests.java (original)
+++ commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs2/test/ProviderReadTests.java Tue Oct 11 20:24:42 2011
@@ -142,6 +142,7 @@ public class ProviderReadTests
// Test a folder
file = getReadFolder().resolveFile("dir1");
assertSame(FileType.FOLDER, file.getType());
+ assertTrue(file.isFolder());
// Test an unknown file
file = getReadFolder().resolveFile("unknown-child");
Modified: commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs2/test/ProviderWriteTests.java
URL: http://svn.apache.org/viewvc/commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs2/test/ProviderWriteTests.java?rev=1182074&r1=1182073&r2=1182074&view=diff
==============================================================================
--- commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs2/test/ProviderWriteTests.java (original)
+++ commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs2/test/ProviderWriteTests.java Tue Oct 11 20:24:42 2011
@@ -82,6 +82,7 @@ public class ProviderWriteTests
folder.createFolder();
assertTrue(folder.exists());
assertSame(FileType.FOLDER, folder.getType());
+ assertTrue(folder.isFolder());
assertEquals(0, folder.getChildren().length);
// Create a descendant, where the intermediate folders don't exist
@@ -92,6 +93,7 @@ public class ProviderWriteTests
folder.createFolder();
assertTrue(folder.exists());
assertSame(FileType.FOLDER, folder.getType());
+ assertTrue(folder.isFolder());
assertEquals(0, folder.getChildren().length);
assertTrue(folder.getParent().exists());
assertTrue(folder.getParent().getParent().exists());
@@ -171,6 +173,7 @@ public class ProviderWriteTests
FileObject folder = scratchFolder.resolveFile("dir1/dir2");
folder.createFolder();
assertEquals(FileType.FOLDER, folder.getType());
+ assertTrue(folder.isFolder());
// Attempt to create a file that already exists as a folder
try
Modified: commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs2/test/VerifyingFileSelector.java
URL: http://svn.apache.org/viewvc/commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs2/test/VerifyingFileSelector.java?rev=1182074&r1=1182073&r2=1182074&view=diff
==============================================================================
--- commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs2/test/VerifyingFileSelector.java (original)
+++ commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs2/test/VerifyingFileSelector.java Tue Oct 11 20:24:42 2011
@@ -91,6 +91,7 @@ public class VerifyingFileSelector
// Check that the given file is a folder
final FileObject folder = fileInfo.getFile();
assertSame(FileType.FOLDER, folder.getType());
+ assertTrue(folder.isFolder());
// Locate the info for the folder
final String baseName = folder.getName().getBaseName();