From 15788112d0a91fa6c5cc76df50de04cf7f15aa74 Mon Sep 17 00:00:00 2001
From: brinn <brinn>
Date: Sun, 23 Sep 2007 11:06:00 +0000
Subject: [PATCH] add: ACCEPT_ALL_FILTER

SVN: 1811
---
 .../cisd/common/utilities/FileUtilities.java  | 21 ++++++++++++--
 .../DirectoryScanningTimerTaskTest.java       | 29 +++++++------------
 2 files changed, 30 insertions(+), 20 deletions(-)

diff --git a/common/source/java/ch/systemsx/cisd/common/utilities/FileUtilities.java b/common/source/java/ch/systemsx/cisd/common/utilities/FileUtilities.java
index 660ca2faaa9..140a3ce67a9 100644
--- a/common/source/java/ch/systemsx/cisd/common/utilities/FileUtilities.java
+++ b/common/source/java/ch/systemsx/cisd/common/utilities/FileUtilities.java
@@ -58,6 +58,19 @@ public final class FileUtilities
         // Can not be instantiated.
     }
 
+    /**
+     * A file filter that accepts all entries.
+     */
+    public static final FileFilter ACCEPT_ALL_FILTER = new FileFilter()
+    {
+        public boolean accept(File pathname)
+        {
+            return true;
+        }
+    };
+
+
+    
     /**
      * Loads a text file to a {@link String}.
      * 
@@ -435,8 +448,8 @@ public final class FileUtilities
      * 
      * @param defaultFileName the default name for the new file if the digit pattern could not be found in its name. If
      *            empty then "1" will be appended to its name.
-     * @param regex pattern to find out the counter. If <code>null</code> then a default (<code>(\\d+)</code>) will be
-     *            used. The given <var>regex</var> must contain <code>(\\d+)</code> or <code>([0-9]+)</code>.
+     * @param regex pattern to find out the counter. If <code>null</code> then a default (<code>(\\d+)</code>)
+     *            will be used. The given <var>regex</var> must contain <code>(\\d+)</code> or <code>([0-9]+)</code>.
      */
     public final static File createNextNumberedFile(File path, Pattern regex, String defaultFileName)
     {
@@ -518,7 +531,11 @@ public final class FileUtilities
     /**
      * Lists all resources in a given directory which match the filter.
      * 
+     * @param directory the directory to list
+     * @param filter only files matching this filter will show up in the result
      * @param loggerOrNull logger, if <code>null</code> than no logging occurs
+     * @return all files in <var>directory</var> that match the filter, or <code>null</code>, if <var>directory</var>
+     *         does not exist or is not a directory.
      */
     public static File[] listFiles(File directory, FileFilter filter, ISimpleLogger loggerOrNull)
     {
diff --git a/common/sourceTest/java/ch/systemsx/cisd/common/utilities/DirectoryScanningTimerTaskTest.java b/common/sourceTest/java/ch/systemsx/cisd/common/utilities/DirectoryScanningTimerTaskTest.java
index 94935be0a3e..5d6a87cf239 100644
--- a/common/sourceTest/java/ch/systemsx/cisd/common/utilities/DirectoryScanningTimerTaskTest.java
+++ b/common/sourceTest/java/ch/systemsx/cisd/common/utilities/DirectoryScanningTimerTaskTest.java
@@ -17,6 +17,7 @@
 package ch.systemsx.cisd.common.utilities;
 
 import static org.testng.AssertJUnit.assertEquals;
+import static ch.systemsx.cisd.common.utilities.FileUtilities.ACCEPT_ALL_FILTER;
 
 import java.io.File;
 import java.io.FileFilter;
@@ -62,14 +63,6 @@ public class DirectoryScanningTimerTaskTest
             }
         };
 
-    private final static FileFilter ALWAYS_TRUE_FILE_FILTER = new FileFilter()
-        {
-            public boolean accept(File pathname)
-            {
-                return true;
-            }
-        };
-
     private final static String EXCEPTION_THROWING_FILE_FILTER_MESSAGE = "Exception throwing file filter does its job.";
 
     private final static FileFilter EXCEPTION_THROWING_FILE_FILTER = new FileFilter()
@@ -135,7 +128,7 @@ public class DirectoryScanningTimerTaskTest
         final File nonExistentFile = new File(unitTestRootDirectory, "non-existent");
         nonExistentFile.delete();
         final DirectoryScanningTimerTask task =
-                new DirectoryScanningTimerTask(nonExistentFile, ALWAYS_TRUE_FILE_FILTER, mockPathHandler);
+                new DirectoryScanningTimerTask(nonExistentFile, ACCEPT_ALL_FILTER, mockPathHandler);
         task.check();
     }
 
@@ -147,7 +140,7 @@ public class DirectoryScanningTimerTaskTest
         file.delete();
         file.deleteOnExit();
         file.createNewFile();
-        final DirectoryScanningTimerTask task = new DirectoryScanningTimerTask(file, ALWAYS_TRUE_FILE_FILTER, mockPathHandler);
+        final DirectoryScanningTimerTask task = new DirectoryScanningTimerTask(file, ACCEPT_ALL_FILTER, mockPathHandler);
         task.check();
    }
 
@@ -165,7 +158,7 @@ public class DirectoryScanningTimerTaskTest
         try
         {
             // Here we should get an AssertationError
-            final DirectoryScanningTimerTask task = new DirectoryScanningTimerTask(readOnlyDirectory, ALWAYS_TRUE_FILE_FILTER, mockPathHandler);
+            final DirectoryScanningTimerTask task = new DirectoryScanningTimerTask(readOnlyDirectory, ACCEPT_ALL_FILTER, mockPathHandler);
             task.check();
         } finally
         {
@@ -185,7 +178,7 @@ public class DirectoryScanningTimerTaskTest
     {
         final File faultyPaths = new File(workingDirectory, DirectoryScanningTimerTask.FAULTY_PATH_FILENAME);
         CollectionIO.writeIterable(faultyPaths, Collections.singleton("some_path"));
-        new DirectoryScanningTimerTask(workingDirectory, ALWAYS_TRUE_FILE_FILTER, mockPathHandler);
+        new DirectoryScanningTimerTask(workingDirectory, ACCEPT_ALL_FILTER, mockPathHandler);
         assert faultyPaths.length() == 0;
     }
 
@@ -196,7 +189,7 @@ public class DirectoryScanningTimerTaskTest
         someFile.createNewFile();
         someFile.deleteOnExit();
         final DirectoryScanningTimerTask scanner =
-                new DirectoryScanningTimerTask(workingDirectory, ALWAYS_TRUE_FILE_FILTER, mockPathHandler);
+                new DirectoryScanningTimerTask(workingDirectory, ACCEPT_ALL_FILTER, mockPathHandler);
         assertEquals(0, mockPathHandler.handledPaths.size());
         scanner.run();
         assertEquals(1, mockPathHandler.handledPaths.size());
@@ -225,7 +218,7 @@ public class DirectoryScanningTimerTaskTest
         someFile.deleteOnExit();
         assert someFile.exists();
         final DirectoryScanningTimerTask scanner =
-                new DirectoryScanningTimerTask(workingDirectory, ALWAYS_TRUE_FILE_FILTER, mockPathHandler);
+                new DirectoryScanningTimerTask(workingDirectory, ACCEPT_ALL_FILTER, mockPathHandler);
         CollectionIO.writeIterable(faultyPaths, Collections.singleton(someFile));
         scanner.run();
         assertEquals(0, mockPathHandler.handledPaths.size());
@@ -255,7 +248,7 @@ public class DirectoryScanningTimerTaskTest
         assert someFile.exists();
         someFile.deleteOnExit();
         final DirectoryScanningTimerTask scanner =
-                new DirectoryScanningTimerTask(workingDirectory, ALWAYS_TRUE_FILE_FILTER, myPathHandler);
+                new DirectoryScanningTimerTask(workingDirectory, ACCEPT_ALL_FILTER, myPathHandler);
 
         // See whether faulty_paths settings works.
         scanner.run();
@@ -297,7 +290,7 @@ public class DirectoryScanningTimerTaskTest
         f3.setLastModified(now - 1000);
         f1.setLastModified(now);
         final DirectoryScanningTimerTask scanner =
-                new DirectoryScanningTimerTask(dir, ALWAYS_TRUE_FILE_FILTER, mockPathHandler);
+                new DirectoryScanningTimerTask(dir, ACCEPT_ALL_FILTER, mockPathHandler);
         scanner.run();
         assertEquals(f2, mockPathHandler.handledPaths.get(0));
         assertEquals(f4, mockPathHandler.handledPaths.get(1));
@@ -315,7 +308,7 @@ public class DirectoryScanningTimerTaskTest
                 LogMonitoringAppender.addAppender(LogCategory.NOTIFY, "Failed to get listing of directory");
         // The directory needs to exist when the scanner is created, otherwise the self-test will fail.
         final DirectoryScanningTimerTask scanner =
-                new DirectoryScanningTimerTask(dir, ALWAYS_TRUE_FILE_FILTER, mockPathHandler);
+                new DirectoryScanningTimerTask(dir, ACCEPT_ALL_FILTER, mockPathHandler);
         dir.delete();
         assert dir.exists() == false;
         scanner.run();
@@ -332,7 +325,7 @@ public class DirectoryScanningTimerTaskTest
                 LogMonitoringAppender.addAppender(LogCategory.NOTIFY, "Failed to get listing of directory");
         // The directory needs to exist when the scanner is created, otherwise the self-test will fail.
         final DirectoryScanningTimerTask scanner =
-                new DirectoryScanningTimerTask(dir, ALWAYS_TRUE_FILE_FILTER, mockPathHandler);
+                new DirectoryScanningTimerTask(dir, ACCEPT_ALL_FILTER, mockPathHandler);
         dir.delete();
         dir.createNewFile();
         dir.deleteOnExit();
-- 
GitLab