Package org.apache.groovy.nio.runtime

# Class WritablePath

java.lang.Object
org.apache.groovy.nio.runtime.WritablePath

All Implemented Interfaces:
  `Writable`, `Comparable<Path>`, `Iterable<Path>`, `Path`, `Watchable`

public class WritablePath extends Object implements Path, Writable
A Writable Path.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `WritablePath(Path delegate)`
  `WritablePath(Path delegate, String encoding)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `int`
  `compareTo(Path other)`
  `boolean`
  `endsWith(String other)`
  `boolean`
  `endsWith(Path other)`
  `boolean`
  `equals(Object other)`
  `Path`
  `getFileName()`
  `FileSystem`
  `getFileSystem()`
  `Path`
  `getName(int index)`
  `int`
  `getNameCount()`
  `Path`
  `getParent()`
  `Path`
  `getRoot()`
  `int`
  `hashCode()`
  `boolean`
  `isAbsolute()`
  `Iterator<Path>`
  `iterator()`
  `Path`
  `normalize()`
  `WatchKey`
  `register(WatchService watcher, WatchEvent.Kind<?>... events)`
  `WatchKey`
  `register(WatchService watcher, WatchEvent.Kind<?>[] events, WatchEvent.Modifier... modifiers)`
  `Path`
  `relativize(Path other)`
  `Path`
  `resolve(String other)`
  `Path`
  `resolve(Path other)`
  `Path`
  `resolveSibling(String other)`
  `Path`
  `resolveSibling(Path other)`
  `boolean`
  `startsWith(String other)`
  `boolean`
  `startsWith(Path other)`
  `Path`
  `subpath(int beginIndex, int endIndex)`
  `Path`
  `toAbsolutePath()`
  `File`
  `toFile()`
  `Path`
  `toRealPath(LinkOption... options)`
  `String`
  `toString()`
  `URI`
  `toUri()`
  `Writer`
  `writeTo(Writer out)`
  Writes this object to the given writer.

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

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

  ### Methods inherited from interface java.lang.Iterable

  `forEach, spliterator`

- ## Constructor Details

  - ### WritablePath

    public WritablePath(Path delegate)

  - ### WritablePath

    public WritablePath(Path delegate, String encoding)

- ## Method Details

  - ### writeTo

    public Writer writeTo(Writer out) throws IOException
    Description copied from interface: `Writable`
    Writes this object to the given writer.

    This is used to defer content creation until the point when it is streamed to the output destination. Oftentimes, content will be defined but not necessarily created (as it may be the case with a Closure definition.) In that case, the output is then 'deferred' to the point when it is serialized to the writer. This class may be used whenever an object should be responsible for creating its own textual representation, but creating the entire output as a single String would be inefficient (such as outputting a multi-gigabyte XML document.)

    Specified by:
      `writeTo` in interface `Writable`
    Parameters:
      `out` - the Writer to which this Writable should output its data.
    Returns:
      the Writer that was passed
    Throws:
      `IOException` - if an error occurred while outputting data to the writer

  - ### getFileSystem

    public FileSystem getFileSystem()
    Specified by:
      `getFileSystem` in interface `Path`

  - ### isAbsolute

    public boolean isAbsolute()
    Specified by:
      `isAbsolute` in interface `Path`

  - ### getRoot

    public Path getRoot()
    Specified by:
      `getRoot` in interface `Path`

  - ### getFileName

    public Path getFileName()
    Specified by:
      `getFileName` in interface `Path`

  - ### getParent

    public Path getParent()
    Specified by:
      `getParent` in interface `Path`

  - ### getNameCount

    public int getNameCount()
    Specified by:
      `getNameCount` in interface `Path`

  - ### getName

    public Path getName(int index)
    Specified by:
      `getName` in interface `Path`

  - ### subpath

    public Path subpath(int beginIndex, int endIndex)
    Specified by:
      `subpath` in interface `Path`

  - ### startsWith

    public boolean startsWith(Path other)
    Specified by:
      `startsWith` in interface `Path`

  - ### startsWith

    public boolean startsWith(String other)
    Specified by:
      `startsWith` in interface `Path`

  - ### endsWith

    public boolean endsWith(Path other)
    Specified by:
      `endsWith` in interface `Path`

  - ### endsWith

    public boolean endsWith(String other)
    Specified by:
      `endsWith` in interface `Path`

  - ### normalize

    public Path normalize()
    Specified by:
      `normalize` in interface `Path`

  - ### resolve

    public Path resolve(Path other)
    Specified by:
      `resolve` in interface `Path`

  - ### resolve

    public Path resolve(String other)
    Specified by:
      `resolve` in interface `Path`

  - ### resolveSibling

    public Path resolveSibling(Path other)
    Specified by:
      `resolveSibling` in interface `Path`

  - ### resolveSibling

    public Path resolveSibling(String other)
    Specified by:
      `resolveSibling` in interface `Path`

  - ### relativize

    public Path relativize(Path other)
    Specified by:
      `relativize` in interface `Path`

  - ### toUri

    public URI toUri()
    Specified by:
      `toUri` in interface `Path`

  - ### toAbsolutePath

    public Path toAbsolutePath()
    Specified by:
      `toAbsolutePath` in interface `Path`

  - ### toRealPath

    public Path toRealPath(LinkOption... options) throws IOException
    Specified by:
      `toRealPath` in interface `Path`
    Throws:
      `IOException`

  - ### toFile

    public File toFile()
    Specified by:
      `toFile` in interface `Path`

  - ### register

    public WatchKey register(WatchService watcher, WatchEvent.Kind<?>[] events, WatchEvent.Modifier... modifiers) throws IOException
    Specified by:
      `register` in interface `Path`
    Specified by:
      `register` in interface `Watchable`
    Throws:
      `IOException`

  - ### register

    public WatchKey register(WatchService watcher, WatchEvent.Kind<?>... events) throws IOException
    Specified by:
      `register` in interface `Path`
    Specified by:
      `register` in interface `Watchable`
    Throws:
      `IOException`

  - ### iterator

    public Iterator<Path> iterator()
    Specified by:
      `iterator` in interface `Iterable<Path>`
    Specified by:
      `iterator` in interface `Path`

  - ### compareTo

    public int compareTo(Path other)
    Specified by:
      `compareTo` in interface `Comparable<Path>`
    Specified by:
      `compareTo` in interface `Path`

  - ### equals

    public boolean equals(Object other)
    Specified by:
      `equals` in interface `Path`
    Overrides:
      `equals` in class `Object`

  - ### hashCode

    public int hashCode()
    Specified by:
      `hashCode` in interface `Path`
    Overrides:
      `hashCode` in class `Object`

  - ### toString

    public String toString()
    Specified by:
      `toString` in interface `Path`
    Overrides:
      `toString` in class `Object`