Windows File System Watcher for Java
Introduction
I have a Java application that requires monitoring directory changes. It does not have to know the source of the change. It only needs to know something is changed so that it can invalid its cache.
One solution would be using a background thread that wakes up periodically to scan the directory for changes. But the directory I need to monitor is very large (around 500MB, with 200MB churn per day), this polling approach is not very desirable.
Fortunately, Windows NTFS file system provides call back functions notifying directory changes. I can use JNI (Java Native Interface) to wrap these native function calls, and provide high-level Java object-oriented abstraction.

License
The source code is licensed under the Apache software license version 2.0.

