You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicemix.apache.org by gn...@apache.org on 2006/01/23 09:51:57 UTC

svn commit: r371495 - /incubator/servicemix/trunk/servicemix-components/src/main/java/org/apache/servicemix/components/file/FilePoller.java

Author: gnodet
Date: Mon Jan 23 00:51:53 2006
New Revision: 371495

URL: http://svn.apache.org/viewcvs?rev=371495&view=rev
Log:
Clean FilePoller polling method.
Patch provided by Peter Smith.

Modified:
    incubator/servicemix/trunk/servicemix-components/src/main/java/org/apache/servicemix/components/file/FilePoller.java

Modified: incubator/servicemix/trunk/servicemix-components/src/main/java/org/apache/servicemix/components/file/FilePoller.java
URL: http://svn.apache.org/viewcvs/incubator/servicemix/trunk/servicemix-components/src/main/java/org/apache/servicemix/components/file/FilePoller.java?rev=371495&r1=371494&r2=371495&view=diff
==============================================================================
--- incubator/servicemix/trunk/servicemix-components/src/main/java/org/apache/servicemix/components/file/FilePoller.java (original)
+++ incubator/servicemix/trunk/servicemix-components/src/main/java/org/apache/servicemix/components/file/FilePoller.java Mon Jan 23 00:51:53 2006
@@ -141,32 +141,21 @@
     }
 
     protected void pollFileOrDirectory(File fileOrDirectory) throws WorkException {
-        if (log.isDebugEnabled()) {
-            log.debug("Polling " + fileOrDirectory);
-        }
-        File[] files = null;
-        if (fileOrDirectory.isDirectory()) {
-            if (filter != null) {
-                files = fileOrDirectory.listFiles(filter);
-            }
-            else {
-                files = fileOrDirectory.listFiles();
-            }
+    	pollFileOrDirectory(fileOrDirectory, true);
+    }
+    
+    protected void pollFileOrDirectory(File fileOrDirectory, boolean processDir) throws WorkException {
+        if (!fileOrDirectory.isDirectory()) {
+            pollFile(fileOrDirectory); // process the file
+        } else if (processDir) {
+            log.debug("Polling directory " + fileOrDirectory);
+            File[] files = fileOrDirectory.listFiles(getFilter());
             for (int i = 0; i < files.length; i++) {
-                File aFile = files[i];
-                if (aFile.isDirectory()) {
-                    if (isRecursive()) {
-                        pollFileOrDirectory(aFile);
-                    }
-                }
-                else {
-                    pollFile(aFile);
-                }
+                pollFileOrDirectory(files[i], isRecursive()); // self-recursion
             }
-        }
-        else {
-            pollFile(fileOrDirectory);
-        }
+        } else {
+            log.debug("Skipping directory " + fileOrDirectory);
+        } 
     }
 
     protected void pollFile(final File aFile) throws WorkException {