name.pachler.nio.file.ext
Class ExtendedWatchEventKind

java.lang.Object
  extended by name.pachler.nio.file.ext.ExtendedWatchEventKind

public class ExtendedWatchEventKind
extends java.lang.Object

Provides non-standard watch event kinds that enable more specialized watch features.

File rename tracking

The ENTRY_RENAME_FROM and ENTRY_RENAME_TO event kinds enable more fine grained file rename tracing. When only the standard event kinds are specified with Path.register(), renaming a file in a watched directory will only yield an StandardWatchEventKind.ENTRY_CREATE and an StandardWatchEventKind.ENTRY_DELETE event, which makes it indistinguishable from actual file creation and deletion events.

If ENTRY_RENAME_FROM and/or ENTRY_RENAME_TO are specified, renamed files will be reported with respective events. Note that if both ENTRY_RENAME_FROM and ENTRY_RENAME_TO are specified, a ENTRY_RENAME_FROM event for a file will be immediately be followed by a ENTRY_RENAME_TO event for the same file.


Field Summary
static WatchEvent.Kind<Path> ENTRY_RENAME_FROM
          Indicates the old file name of a renamed file.
static WatchEvent.Kind<Path> ENTRY_RENAME_TO
          Indicates the new file name of a renamed file.
static WatchEvent.Kind<java.lang.Void> KEY_INVALID
          Indicates that the given WatchKey has become invalid.
 
Constructor Summary
ExtendedWatchEventKind()
           
 
Method Summary
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ENTRY_RENAME_FROM

public static WatchEvent.Kind<Path> ENTRY_RENAME_FROM
Indicates the old file name of a renamed file. The WatchEvent's WatchEvent.context() method will return a Path that indicates the previous name that the file had.


ENTRY_RENAME_TO

public static WatchEvent.Kind<Path> ENTRY_RENAME_TO
Indicates the new file name of a renamed file. The WatchEvent's WatchEvent.context() method will return a Path that indicates the new name of the file.


KEY_INVALID

public static WatchEvent.Kind<java.lang.Void> KEY_INVALID
Indicates that the given WatchKey has become invalid. This can happen for a number of reasons: Note that not all operating systems will invalidate the WatchKey (and report KEY_INVALID) under the same circumstances. On most platforms, moving or renaming the directory that the key was registered with will invalidate it, however, on Windows it will not (only when it is deleted or unmounted).

Constructor Detail

ExtendedWatchEventKind

public ExtendedWatchEventKind()