Package name.pachler.nio.file.ext

# Class ExtendedWatchEventKind

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

public class ExtendedWatchEventKind extends 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

Fields
Modifier and Type
Field
Description
`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<Void>`
`KEY_INVALID`
Indicates that the given `WatchKey` has become invalid.

## Constructor Summary

Constructors
Constructor
Description
`ExtendedWatchEventKind()`

## Method Summary

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### 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<Void> KEY_INVALID
Indicates that the given `WatchKey` has become invalid. This can happen for a number of reasons:

- The key has been invalidated programmatically by calling `WatchKey.cancel()`.
- The `WatchService` has been closed.
- The path that the key has been registered with has become unavailable, e.g because it was deleted or the file system on which it resides has been unmounted.

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 Details

### ExtendedWatchEventKind

public ExtendedWatchEventKind()