private void register ( Path path ) throws IOException { ////!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! //// USUALLY THIS IS THE DEFAULT WAY TO REGISTER THE EVENTS: ////!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! // WatchKey watchKey = path.register( // watchService, // ENTRY_CREATE, // ENTRY_DELETE, // ENTRY_MODIFY); ////!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! //// BUT THIS IS DAMN SLOW (at least on a Mac) //// THEREFORE WE USE EVENTS FROM COM.SUN PACKAGES THAT ARE WAY FASTER //// THIS MIGHT BREAK COMPATIBILITY WITH OTHER JDKs //// MORE: http://stackoverflow.com/questions/9588737/is-java-7-watchservice-slow-for-anyone-else ////!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! WatchKey watchKey = path . register ( watchService , new WatchEvent . Kind [ ] { StandardWatchEventKinds . ENTRY_CREATE , StandardWatchEventKinds . ENTRY_MODIFY , StandardWatchEventKinds . ENTRY_DELETE } , SensitivityWatchEventModifier . HIGH ) ; mapOfWatchKeysToPaths . put ( watchKey , path ) ; }
Register the given path with the WatchService