From 428bfcc8f2989d46f969da200dce385930a7068d Mon Sep 17 00:00:00 2001 From: Saptarshi Basu Date: Sun, 25 Dec 2016 01:14:35 +0530 Subject: [PATCH] WatchService vs. Apache Commons IO Mnitoring (#921) * WatchService vs. Apache Commons IO Mnitoring * Indentation fixed --- .../DirectoryMonitoringExample.java | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 core-java/src/main/java/com/baeldung/dirmonitoring/DirectoryMonitoringExample.java diff --git a/core-java/src/main/java/com/baeldung/dirmonitoring/DirectoryMonitoringExample.java b/core-java/src/main/java/com/baeldung/dirmonitoring/DirectoryMonitoringExample.java new file mode 100644 index 0000000000..49030b5352 --- /dev/null +++ b/core-java/src/main/java/com/baeldung/dirmonitoring/DirectoryMonitoringExample.java @@ -0,0 +1,38 @@ +package com.baeldung.dirmonitoring; + +import java.io.File; + +import org.apache.commons.io.monitor.FileAlterationListener; +import org.apache.commons.io.monitor.FileAlterationListenerAdaptor; +import org.apache.commons.io.monitor.FileAlterationMonitor; +import org.apache.commons.io.monitor.FileAlterationObserver; + +public class DirectoryMonitoringExample { + + public static final int POLL_INTERVAL = 500; + + public static void main(String[] args) throws Exception { + FileAlterationObserver observer = new FileAlterationObserver(System.getProperty("user.home")); + FileAlterationMonitor monitor = new FileAlterationMonitor(POLL_INTERVAL); + FileAlterationListener listener = new FileAlterationListenerAdaptor() { + @Override + public void onFileCreate(File file) { + System.out.println("File: " + file.getName() + " created"); + } + + @Override + public void onFileDelete(File file) { + System.out.println("File: " + file.getName() + " deleted"); + } + + @Override + public void onFileChange(File file) { + System.out.println("File: " + file.getName() + " changed"); + } + }; + observer.addListener(listener); + monitor.addObserver(observer); + monitor.start(); + + } +}