name.pachler.nio.file
Class Path

java.lang.Object
  extended by name.pachler.nio.file.Path
All Implemented Interfaces:
Watchable

public abstract class Path
extends java.lang.Object
implements Watchable

This class represents an abstract Path object that a WatchService can operate on.
Note that Path is a new way of representing file system paths in JDK7 and is included here to provide source level compatibility. This implementation only uses it as a wrapper for java.io.File.
To create a new Path instance, either use the Bootstrapper.newPath() or Paths.


Constructor Summary
protected Path()
           
 
Method Summary
abstract  boolean equals(java.lang.Object obj)
           
abstract  int hashCode()
           
abstract  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.
abstract  WatchKey register(WatchService watcher, WatchEvent.Kind<?>[] events, WatchEvent.Modifier... modifiers)
          Registers the file system path (a directory) with the given WatchServiceand provides a WatchKey as a handle for that registration.
abstract  Path resolve(Path other)
           
abstract  java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Path

protected Path()
Method Detail

equals

public abstract boolean equals(java.lang.Object obj)
Overrides:
equals in class java.lang.Object

hashCode

public abstract int hashCode()
Overrides:
hashCode in class java.lang.Object

register

public abstract WatchKey register(WatchService watcher,
                                  WatchEvent.Kind<?>... events)
                           throws java.io.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
Throws:
java.io.IOException
See Also:
register(name.pachler.nio.file.WatchService, name.pachler.nio.file.WatchEvent.Kind[], name.pachler.nio.file.WatchEvent.Modifier[])

register

public abstract WatchKey register(WatchService watcher,
                                  WatchEvent.Kind<?>[] events,
                                  WatchEvent.Modifier... modifiers)
                           throws java.io.IOException
Description copied from interface: Watchable
Registers the file system path (a directory) with the given WatchServiceand 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
Parameters:
watcher - a valid WatchService instance.
events - The events to register for. The event kinds defined in StandardWatchEventKindand 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. WatchEvent.Modifiers 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:
java.io.IOException - for general I/O errors
See Also:
StandardWatchEventKind, ExtendedWatchEventKind, ExtendedWatchEventModifier

resolve

public abstract Path resolve(Path other)

toString

public abstract java.lang.String toString()
Overrides:
toString in class java.lang.Object