Class ShrinkWrapPath
- java.lang.Object
-
- org.jboss.shrinkwrap.impl.nio.file.ShrinkWrapPath
-
- All Implemented Interfaces:
java.lang.Comparable<java.nio.file.Path>,java.lang.Iterable<java.nio.file.Path>,java.nio.file.Path,java.nio.file.Watchable
public class ShrinkWrapPath extends java.lang.Object implements java.nio.file.Path
-
-
Field Summary
Fields Modifier and Type Field Description private static java.lang.StringDIR_BACKprivate static java.lang.StringDIR_THISprivate ShrinkWrapFileSystemfileSystemOwningShrinkWrapFileSystemprivate static java.util.logging.Loggerlogprivate java.lang.StringpathInternal representation
-
Constructor Summary
Constructors Constructor Description ShrinkWrapPath(java.lang.String path, ShrinkWrapFileSystem fileSystem)Constructs a new instance using the specified (required) canonical form and backingShrinkWrapFileSystemShrinkWrapPath(ArchivePath path, ShrinkWrapFileSystem fileSystem)Constructs a new instance using the specified (required) path and backingShrinkWrapFileSystem
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description intcompareTo(java.nio.file.Path other)private intcountOccurrences(java.lang.String string, char c, int offset)Returns the number of occurrences of the specified character in the specifiedString, starting at the specified offsetbooleanendsWith(java.lang.String other)booleanendsWith(java.nio.file.Path other)booleanequals(java.lang.Object obj)private java.nio.file.PathfromString(java.lang.String path)Creates a newShrinkWrapPathinstance from the specified inputStringjava.nio.file.PathgetFileName()java.nio.file.FileSystemgetFileSystem()java.nio.file.PathgetName(int index)intgetNameCount()java.nio.file.PathgetParent()java.nio.file.PathgetRoot()inthashCode()booleanisAbsolute()java.util.Iterator<java.nio.file.Path>iterator()java.nio.file.Pathnormalize()private static java.lang.Stringnormalize(java.util.List<java.lang.String> path, boolean absolute)Normalizes the tokenized view of the pathjava.nio.file.WatchKeyregister(java.nio.file.WatchService watcher, java.nio.file.WatchEvent.Kind<?>... events)java.nio.file.WatchKeyregister(java.nio.file.WatchService watcher, java.nio.file.WatchEvent.Kind<?>[] events, java.nio.file.WatchEvent.Modifier... modifiers)java.nio.file.Pathrelativize(java.nio.file.Path other)private static ShrinkWrapPathrelativizeCommonRoot(ShrinkWrapPath thisOriginal, java.nio.file.Path thisCurrent, java.nio.file.Path otherOriginal, java.nio.file.Path otherCurrent, int backupCount)Relativizes the paths recursivelyjava.nio.file.Pathresolve(java.lang.String other)java.nio.file.Pathresolve(java.nio.file.Path other)java.nio.file.PathresolveSibling(java.lang.String other)java.nio.file.PathresolveSibling(java.nio.file.Path other)booleanstartsWith(java.lang.String other)booleanstartsWith(java.nio.file.Path other)java.nio.file.Pathsubpath(int beginIndex, int endIndex)java.nio.file.PathtoAbsolutePath()Resolves relative paths against the root directory, normalizing as well.java.io.FiletoFile()private static java.util.List<java.lang.String>tokenize(ShrinkWrapPath path)Returns the components of this path in order from root outjava.nio.file.PathtoRealPath(java.nio.file.LinkOption... options)java.lang.StringtoString()java.net.URItoUri()
-
-
-
Field Detail
-
log
private static final java.util.logging.Logger log
-
DIR_BACK
private static final java.lang.String DIR_BACK
- See Also:
- Constant Field Values
-
DIR_THIS
private static final java.lang.String DIR_THIS
- See Also:
- Constant Field Values
-
path
private final java.lang.String path
Internal representation
-
fileSystem
private final ShrinkWrapFileSystem fileSystem
OwningShrinkWrapFileSystem
-
-
Constructor Detail
-
ShrinkWrapPath
ShrinkWrapPath(java.lang.String path, ShrinkWrapFileSystem fileSystem) throws java.lang.IllegalArgumentExceptionConstructs a new instance using the specified (required) canonical form and backingShrinkWrapFileSystem- Parameters:
path-fileSystem-- Throws:
java.lang.IllegalArgumentException- If the path or file system is not specified
-
ShrinkWrapPath
ShrinkWrapPath(ArchivePath path, ShrinkWrapFileSystem fileSystem) throws java.lang.IllegalArgumentException
Constructs a new instance using the specified (required) path and backingShrinkWrapFileSystem- Parameters:
path- to be evaluated usingArchivePath.get()fileSystem-- Throws:
java.lang.IllegalArgumentException- If the path or file system is not specifiedjava.lang.IllegalArgumentException- If the delegate is not specified
-
-
Method Detail
-
getFileSystem
public java.nio.file.FileSystem getFileSystem()
- Specified by:
getFileSystemin interfacejava.nio.file.Path- See Also:
Path.getFileSystem()
-
isAbsolute
public boolean isAbsolute()
- Specified by:
isAbsolutein interfacejava.nio.file.Path- See Also:
Path.isAbsolute()
-
getRoot
public java.nio.file.Path getRoot()
- Specified by:
getRootin interfacejava.nio.file.Path- See Also:
Path.getRoot()
-
getFileName
public java.nio.file.Path getFileName()
- Specified by:
getFileNamein interfacejava.nio.file.Path- See Also:
Path.getFileName()
-
getParent
public java.nio.file.Path getParent()
- Specified by:
getParentin interfacejava.nio.file.Path- See Also:
Path.getParent()
-
getNameCount
public int getNameCount()
- Specified by:
getNameCountin interfacejava.nio.file.Path- See Also:
Path.getNameCount()
-
countOccurrences
private int countOccurrences(java.lang.String string, char c, int offset)Returns the number of occurrences of the specified character in the specifiedString, starting at the specified offset- Parameters:
string-c-offset-- Returns:
-
getName
public java.nio.file.Path getName(int index)
- Specified by:
getNamein interfacejava.nio.file.Path- See Also:
Path.getName(int)
-
subpath
public java.nio.file.Path subpath(int beginIndex, int endIndex)- Specified by:
subpathin interfacejava.nio.file.Path- See Also:
Path.subpath(int, int)
-
startsWith
public boolean startsWith(java.nio.file.Path other)
- Specified by:
startsWithin interfacejava.nio.file.Path- See Also:
Path.startsWith(java.nio.file.Path)
-
startsWith
public boolean startsWith(java.lang.String other)
- Specified by:
startsWithin interfacejava.nio.file.Path- See Also:
Path.startsWith(java.lang.String)
-
endsWith
public boolean endsWith(java.nio.file.Path other)
- Specified by:
endsWithin interfacejava.nio.file.Path- See Also:
Path.endsWith(java.nio.file.Path)
-
endsWith
public boolean endsWith(java.lang.String other)
- Specified by:
endsWithin interfacejava.nio.file.Path- See Also:
Path.endsWith(java.lang.String)
-
normalize
public java.nio.file.Path normalize()
- Specified by:
normalizein interfacejava.nio.file.Path- See Also:
Path.normalize()
-
resolve
public java.nio.file.Path resolve(java.nio.file.Path other)
- Specified by:
resolvein interfacejava.nio.file.Path- See Also:
Path.resolve(java.nio.file.Path)
-
resolve
public java.nio.file.Path resolve(java.lang.String other)
- Specified by:
resolvein interfacejava.nio.file.Path- See Also:
Path.resolve(java.lang.String)
-
resolveSibling
public java.nio.file.Path resolveSibling(java.nio.file.Path other)
- Specified by:
resolveSiblingin interfacejava.nio.file.Path- See Also:
Path.resolveSibling(java.nio.file.Path)
-
resolveSibling
public java.nio.file.Path resolveSibling(java.lang.String other)
- Specified by:
resolveSiblingin interfacejava.nio.file.Path- See Also:
Path.resolveSibling(java.lang.String)
-
relativize
public java.nio.file.Path relativize(java.nio.file.Path other)
- Specified by:
relativizein interfacejava.nio.file.Path- See Also:
Path.relativize(java.nio.file.Path)
-
toUri
public java.net.URI toUri()
- Specified by:
toUriin interfacejava.nio.file.Path- See Also:
Path.toUri()
-
toAbsolutePath
public java.nio.file.Path toAbsolutePath()
Resolves relative paths against the root directory, normalizing as well.- Specified by:
toAbsolutePathin interfacejava.nio.file.Path- See Also:
Path.toAbsolutePath()
-
toRealPath
public java.nio.file.Path toRealPath(java.nio.file.LinkOption... options) throws java.io.IOException- Specified by:
toRealPathin interfacejava.nio.file.Path- Throws:
java.io.IOException- See Also:
Path.toRealPath(java.nio.file.LinkOption[])
-
toFile
public java.io.File toFile()
- Specified by:
toFilein interfacejava.nio.file.Path- See Also:
Path.toFile()
-
register
public java.nio.file.WatchKey register(java.nio.file.WatchService watcher, java.nio.file.WatchEvent.Kind<?>[] events, java.nio.file.WatchEvent.Modifier... modifiers) throws java.io.IOException- Specified by:
registerin interfacejava.nio.file.Path- Specified by:
registerin interfacejava.nio.file.Watchable- Throws:
java.io.IOException- See Also:
java.nio.file.Path#register(java.nio.file.WatchService, java.nio.file.WatchEvent.Kind>[], java.nio.file.WatchEvent.Modifier[])
-
register
public java.nio.file.WatchKey register(java.nio.file.WatchService watcher, java.nio.file.WatchEvent.Kind<?>... events) throws java.io.IOException- Specified by:
registerin interfacejava.nio.file.Path- Specified by:
registerin interfacejava.nio.file.Watchable- Throws:
java.io.IOException- See Also:
java.nio.file.Path#register(java.nio.file.WatchService, java.nio.file.WatchEvent.Kind>[])
-
iterator
public java.util.Iterator<java.nio.file.Path> iterator()
- Specified by:
iteratorin interfacejava.lang.Iterable<java.nio.file.Path>- Specified by:
iteratorin interfacejava.nio.file.Path- See Also:
Path.iterator()
-
compareTo
public int compareTo(java.nio.file.Path other)
- Specified by:
compareToin interfacejava.lang.Comparable<java.nio.file.Path>- Specified by:
compareToin interfacejava.nio.file.Path- See Also:
Path.compareTo(java.nio.file.Path)
-
toString
public java.lang.String toString()
- Specified by:
toStringin interfacejava.nio.file.Path- Overrides:
toStringin classjava.lang.Object- See Also:
Path.toString()
-
fromString
private java.nio.file.Path fromString(java.lang.String path)
Creates a newShrinkWrapPathinstance from the specified inputString- Parameters:
path-- Returns:
-
tokenize
private static java.util.List<java.lang.String> tokenize(ShrinkWrapPath path)
Returns the components of this path in order from root out- Returns:
-
normalize
private static java.lang.String normalize(java.util.List<java.lang.String> path, boolean absolute)Normalizes the tokenized view of the path- Parameters:
path-- Returns:
-
relativizeCommonRoot
private static ShrinkWrapPath relativizeCommonRoot(ShrinkWrapPath thisOriginal, java.nio.file.Path thisCurrent, java.nio.file.Path otherOriginal, java.nio.file.Path otherCurrent, int backupCount)
Relativizes the paths recursively- Parameters:
thisOriginal-thisCurrent-otherOriginal-otherCurrent-backupCount-- Returns:
-
hashCode
public int hashCode()
- Specified by:
hashCodein interfacejava.nio.file.Path- Overrides:
hashCodein classjava.lang.Object- See Also:
Object.hashCode()
-
equals
public boolean equals(java.lang.Object obj)
- Specified by:
equalsin interfacejava.nio.file.Path- Overrides:
equalsin classjava.lang.Object- See Also:
Object.equals(java.lang.Object)
-
-