Search code examples
javavfsapache-commons-vfsfile-monitoring

Specific file monitor using Apache Commons VFS API


I want to perform some operation after a file named (XXXXXX.txt) created in the specific directory. I just don't want to monitor the whole directory. How can i achieve this using Apache Commons VFS API? I tried with the below code, but it did not work out. Any idea about how to achieve this?

FileObject listendir1 = fsManager.resolveFile("C:\\Users\\Myname\\AppData\\Local\\Temp\\XXXXXXX.txt");
fileMonitor.addFile(listendir1);
fileMonitor.start();

Solution

  • Try something like this:

     FileSystemManager fsManager = VFS.getManager();
     FileObject listendir = fsManager.resolveFile("/home/username/monitored/");
     DefaultFileMonitor fm = new DefaultFileMonitor(new CustomFileListener());
     fm.setRecursive(true);
     fm.addFile(listendir);
     fm.start();