Inspired by an OS that went in oblivion some years ago (BeOS) operating systems as Windows, Linux and MacOS all have ways to monitor directories for changes built into the filesystem: meaning if a directory is changed because a file or directory is added, removed or changed you can get an event. There's need for running a program that periodically monitors the directory (nor does the OS do that, it's build into the filesystem). Software like Dropbox and other filesyncing products use this, so whenever you change or update a file it's immediately updated to the 'cloud'.
The name of the API's for the listed OS's are:
- On Windows, the ReadDirectoryChangesW function as part of the filesystem API.
- On Linux, the inotify can be used.
- On MacOS, there's FSEvent api (source arstechnica).
There are a number of open source libraries that allow you to use that API in Java, not all cross-platform. Fortunately, since Java 7 watching directories is now part of the default java.nio.file API.
The (Dutch) website Computable has a interesting article on how awful it is the government wastes enormous amounts of money on it-projects. With that regard a report by System Error on the UK government who are (were?) equally awful is still a good read: Fixing the flaws in government IT
subscribe via RSS