X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=support%2Fgeneral%2Fsrc%2Fmain%2Fjava%2Forg%2Fwamblee%2Fio%2FDirectoryMonitor.java;h=a258f0984ae346cdfd9ab347380f5c7e970dbb32;hb=e72743b6a9fac5a99b842f92b1687fba65ef3210;hp=a4ad6d87f4a0bbf8f57c9f2a87318db57797558e;hpb=17775e14ecfb286e59f67117e5cee7e21e95ab1f;p=utils diff --git a/support/general/src/main/java/org/wamblee/io/DirectoryMonitor.java b/support/general/src/main/java/org/wamblee/io/DirectoryMonitor.java index a4ad6d87..a258f098 100644 --- a/support/general/src/main/java/org/wamblee/io/DirectoryMonitor.java +++ b/support/general/src/main/java/org/wamblee/io/DirectoryMonitor.java @@ -15,8 +15,6 @@ */ package org.wamblee.io; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; import java.io.File; import java.io.FileFilter; @@ -26,14 +24,17 @@ import java.util.HashMap; import java.util.HashSet; import java.util.Map; import java.util.Set; +import java.util.logging.Logger; /** * Monitors a directory for changes. + * The currernt implementation only checks files not directories and does not check for + * modifications in subdirectories. * * @author Erik Brakkee */ public class DirectoryMonitor { - private static final Log LOG = LogFactory.getLog(DirectoryMonitor.class); + private static final Logger LOG = Logger.getLogger(DirectoryMonitor.class.getName()); private File directory; @@ -68,7 +69,7 @@ public class DirectoryMonitor { * for the same changes. */ public void poll() { - LOG.debug("Polling " + directory); + LOG.fine("Polling " + directory); Map newContents = new HashMap(); File[] files = directory.listFiles(filter); @@ -110,11 +111,26 @@ public class DirectoryMonitor { contents = newContents; } + /** + * Listener interface to be provided by users of the directory monitor to get notified of + * changes. + * + * @author Erik Brakkee + */ public static interface Listener { + /** + * @param aFile File that has changed. + */ void fileChanged(File aFile); + /** + * @param aFile File that was created. + */ void fileCreated(File aFile); + /** + * @param aFile File that was deleted. + */ void fileDeleted(File aFile); } }