Currently we are in progress of adding a new functionality for the HD server. In order to have centralized data stored filled by multiple remote locations we are adding simple master / slave replication. This way the remote sites data can be gathers on a global “hdslave” instance and be queried from there.
For this feature we needed a way to watch the file system for changed outside of the current process. While there are features like polling the file system (e.g. in Apache Commons) or JNI wrappers like “jnotify” we wanted something “out of the box”. Eclipse provides some thing like that in the “org.eclipse.core.resources” bundle. Sadly it seems that on linux is also performed by polling.
Gladly NIO2 from Java 7 brings a feature called “WatcherService” which does the job. Finally a real reason to use Java 7 right now! 😉 So starting with the next openSCADA builds there will be a “org.openscada.hd.storage.slave.hds” bundle which allows listening to a directory and automatically import HDS storages replicated from “anywhere”.