Package name.pachler.nio.file.impl

# Class PathImpl

java.lang.Object
name.pachler.nio.file.Path
name.pachler.nio.file.impl.PathImpl

All Implemented Interfaces:
  `Watchable`

public class PathImpl extends Path
This is a minimal implementation of JDK7's Path class, so all we offer here is what is required for WatchService and friends to work

## Constructor Summary

Constructors
Constructor
Description
`PathImpl(File file)`
This constructor does not comply with JDK7.

## Method Summary

Modifier and Type
Method
Description
`boolean`
`equals(Object obj)`
`File`
`getFile()`
This method does not exist in JDK7 and is only supplied for convenience
`int`
`hashCode()`
`WatchKey`
`register(WatchService watcher, WatchEvent.Kind<?>... events)`
Registers the file system path (a directory) with the given WatchService and provides a WatchKey as a handle for that registration.
`WatchKey`
`register(WatchService watcher, WatchEvent.Kind<?>[] events, WatchEvent.Modifier... modifiers)`
Registers the file system path (a directory) with the given `WatchService`and provides a WatchKey as a handle for that registration.
`Path`
`resolve(Path other)`
`String`
`toString()`

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

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

## Constructor Details

### PathImpl

public PathImpl(File file)
This constructor does not comply with JDK7.

Parameters:
  `filere` -

## Method Details

### resolve

public Path resolve(Path other)

Specified by:
  `resolve` in class `Path`

### register

public WatchKey register(WatchService watcher, WatchEvent.Kind<?>... events) throws IOException
Description copied from interface: `Watchable`
Registers the file system path (a directory) with the given WatchService and provides a WatchKey as a handle for that registration. Equivalent to calling `register(watcher, events, new WatchEvent.Modifier[0]);`

Specified by:
  `register` in interface `Watchable`
Specified by:
  `register` in class `Path`
Throws:
  `IOException`
See Also:
  - `Path.register(name.pachler.nio.file.WatchService, name.pachler.nio.file.WatchEvent.Kind<?>[], name.pachler.nio.file.WatchEvent.Modifier[])`

### register

public WatchKey register(WatchService watcher, WatchEvent.Kind<?>[] events, WatchEvent.Modifier... modifiers) throws IOException
Description copied from interface: `Watchable`
Registers the file system path (a directory) with the given `WatchService`and provides a WatchKey as a handle for that registration. The events and modifier lists determine the events that the `WatchService` will report.
If a path instance is passed in that represents the same file system object that has been specified in a previous call to this method with the same `WatchService`, the same `WatchKey` will be returned. In this case, the `WatchKey`'s watch settings are altered to match the new event and modifier lists. Note that such changes may result in `StandardWatchEventKind.OVERFLOW` events to be reported on some platforms.
Not all event kinds and modifiers defined in `StandardWatchEventKind`, `ExtendedWatchEventKind` and `ExtendedWatchEventModifier` may be supported on a target platform (typically though, in this implementation, all event kinds defined in `StandardWatchEventKind` are always supported).

Specified by:
  `register` in interface `Watchable`
Specified by:
  `register` in class `Path`
Parameters:
  `watcher` - a valid `WatchService` instance.
  `events` - The events to register for. The event kinds defined in `StandardWatchEventKind`and `ExtendedWatchEventKind` define valid event kinds that can be passed in here. Not that not all event kinds may be supported on a given platform, so see the documentation of a specific event kind.
  `modifiers` - The event modifiers to use when registering.
  invalid reference

      WatchEvent$Modifier

  s define special behaviour that's expected from the `WatchService`. Note that some event modifiers may not be supported on a given platform; see the specific modifier for details.
Returns:
  a new `WatchKey` that represents the registration.
Throws:
  `IOException`
See Also:
  - `StandardWatchEventKind`
  - `ExtendedWatchEventKind`
  - `ExtendedWatchEventModifier`

### getFile

public File getFile()
This method does not exist in JDK7 and is only supplied for convenience

### toString

public String toString()

Specified by:
  `toString` in class `Path`

### equals

public boolean equals(Object obj)

Specified by:
  `equals` in class `Path`

### hashCode

public int hashCode()

Specified by:
  `hashCode` in class `Path`