weaver 2004/07/15 13:41:54
Modified: commons/src/java/org/apache/jetspeed/util JarHelper.java
DirectoryHelper.java FileSystemHelper.java
components/page-manager/src/test/org/apache/jetspeed/page
TestCastorXmlPageManager.java
Log:
Added filtering to FileSystemHelper.copyFrom() method. Thanks to Enrique Lara for
finding this and suggesting the solution.
Revision Changes Path
1.2 +14 -0
jakarta-jetspeed-2/commons/src/java/org/apache/jetspeed/util/JarHelper.java
Index: JarHelper.java
===================================================================
RCS file:
/home/cvs/jakarta-jetspeed-2/commons/src/java/org/apache/jetspeed/util/JarHelper.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- JarHelper.java 14 Jul 2004 21:08:05 -0000 1.1
+++ JarHelper.java 15 Jul 2004 20:41:54 -0000 1.2
@@ -16,6 +16,7 @@
package org.apache.jetspeed.util;
import java.io.File;
+import java.io.FileFilter;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
@@ -136,6 +137,19 @@
}
}
+ /**
+ * <p>
+ * copyFrom
+ * </p>
+ *
+ * @param directory
+ * @param fileFilter
+ * @throws IOException
+ */
+ public void copyFrom( File directory, FileFilter fileFilter ) throws IOException
+ {
+ dirHelper.copyFrom(directory, fileFilter);
+ }
/**
* <p>
* copyFrom
1.2 +30 -7
jakarta-jetspeed-2/commons/src/java/org/apache/jetspeed/util/DirectoryHelper.java
Index: DirectoryHelper.java
===================================================================
RCS file:
/home/cvs/jakarta-jetspeed-2/commons/src/java/org/apache/jetspeed/util/DirectoryHelper.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- DirectoryHelper.java 14 Jul 2004 21:08:05 -0000 1.1
+++ DirectoryHelper.java 15 Jul 2004 20:41:54 -0000 1.2
@@ -16,6 +16,7 @@
package org.apache.jetspeed.util;
import java.io.File;
+import java.io.FileFilter;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
@@ -32,7 +33,6 @@
{
protected File directory;
-
/**
*
*/
@@ -49,6 +49,9 @@
throw new IllegalArgumentException("DirectoryHelper(File) requires
directory not a file.");
}
this.directory = directory;
+
+
+
}
/**
@@ -62,13 +65,33 @@
*/
public void copyFrom( File srcDirectory ) throws IOException
{
- if(!directory.isDirectory())
+ copyFrom(srcDirectory, new FileFilter() {
+ public boolean accept(File pathname)
+ {
+ return true;
+ }
+ });
+ }
+
+ /**
+ * <p>
+ * copyFrom
+ * </p>
+ *
+ * @see org.apache.jetspeed.util.FileSystemHelper#copyFrom(java.io.File,
java.io.FileFilter)
+ * @param directory
+ * @param fileFilter
+ * @throws IOException
+ */
+ public void copyFrom( File srcDirectory, FileFilter fileFilter ) throws
IOException
+ {
+ if(!srcDirectory.isDirectory())
{
throw new IllegalArgumentException("DirectoryHelper.copyFrom(File)
requires directory not a file.");
}
- copyFiles(srcDirectory, directory);
+ copyFiles(srcDirectory, directory, fileFilter);
+
}
-
/**
*
* <p>
@@ -81,10 +104,10 @@
* @throws FileNotFoundException
*/
- protected void copyFiles(File srcDir, File dstDir) throws IOException
+ protected void copyFiles(File srcDir, File dstDir, FileFilter fileFilter)
throws IOException
{
- File[] children = srcDir.listFiles();
+ File[] children = srcDir.listFiles(fileFilter);
for(int i=0; i<children.length; i++)
{
File child = children[i];
@@ -102,7 +125,7 @@
{
File newSubDir = new File(dstDir, child.getName());
newSubDir.mkdir();
- copyFiles(child, newSubDir);
+ copyFiles(child, newSubDir, fileFilter);
}
}
}
1.2 +13 -0
jakarta-jetspeed-2/commons/src/java/org/apache/jetspeed/util/FileSystemHelper.java
Index: FileSystemHelper.java
===================================================================
RCS file:
/home/cvs/jakarta-jetspeed-2/commons/src/java/org/apache/jetspeed/util/FileSystemHelper.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- FileSystemHelper.java 14 Jul 2004 21:08:05 -0000 1.1
+++ FileSystemHelper.java 15 Jul 2004 20:41:54 -0000 1.2
@@ -16,6 +16,7 @@
package org.apache.jetspeed.util;
import java.io.File;
+import java.io.FileFilter;
import java.io.IOException;
/**
@@ -37,6 +38,18 @@
* returns <code>false</code>
*/
void copyFrom(File directory) throws IOException;
+
+ /**
+ *
+ * <p>
+ * copyFrom
+ * </p>
+ *
+ * @param directory
+ * @param fileFilter
+ * @throws IOException
+ */
+ void copyFrom(File directory, FileFilter fileFilter) throws IOException;
/**
*
1.4 +11 -2
jakarta-jetspeed-2/components/page-manager/src/test/org/apache/jetspeed/page/TestCastorXmlPageManager.java
Index: TestCastorXmlPageManager.java
===================================================================
RCS file:
/home/cvs/jakarta-jetspeed-2/components/page-manager/src/test/org/apache/jetspeed/page/TestCastorXmlPageManager.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- TestCastorXmlPageManager.java 14 Jul 2004 21:09:24 -0000 1.3
+++ TestCastorXmlPageManager.java 15 Jul 2004 20:41:54 -0000 1.4
@@ -17,6 +17,7 @@
// Java imports
import java.io.File;
+import java.io.FileFilter;
import java.util.Collection;
import java.util.Iterator;
import java.util.List;
@@ -55,7 +56,15 @@
{
super.setUp();
dirHelper = new DirectoryHelper(new File("target/testdata/pages"));
- dirHelper.copyFrom(new File("testdata/pages"));
+ FileFilter noCVS = new FileFilter() {
+
+ public boolean accept( File pathname )
+ {
+ return !pathname.getName().equals("CVS");
+ }
+
+ };
+ dirHelper.copyFrom(new File("testdata/pages"), noCVS);
IdGenerator idGen = new JetspeedIdGenerator(65536,"P-","");
FileCache cache = new FileCache(10, 12);
pageManager = new CastorXmlPageManager(idGen, cache,
"target/testdata/pages");
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]