|
Eclipse Platform Release 3.3 |
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||||
java.lang.Objectorg.eclipse.core.runtime.Path
The standard implementation of the IPath interface.
Paths are always maintained in canonicalized form. That is, parent
references (i.e., ../../) and duplicate separators are
resolved. For example,
new Path("/a/b").append("../foo/bar")
will yield the path
/a/foo/bar
This class can be used without OSGi running.
This class is not intended to be subclassed by clients but may be instantiated.
IPath| Field Summary | |
|---|---|
static Path |
EMPTY
Constant value containing the empty path with no device. |
static Path |
ROOT
Constant value containing the root path with no device. |
| Fields inherited from interface org.eclipse.core.runtime.IPath |
|---|
DEVICE_SEPARATOR, SEPARATOR |
| Constructor Summary | |
|---|---|
Path(String fullPath)
Constructs a new path from the given string path. |
|
Path(String device,
String path)
Constructs a new path from the given device id and string path. |
|
| Method Summary | |
|---|---|
IPath |
addFileExtension(String extension)
Returns a new path which is the same as this path but with the given file extension added. |
IPath |
addTrailingSeparator()
Returns a path with the same segments as this path but with a trailing separator added. |
IPath |
append(IPath tail)
Returns the canonicalized path obtained from the concatenation of the given path's segments to the end of this path. |
IPath |
append(String tail)
Returns the canonicalized path obtained from the concatenation of the given string path to the end of this path. |
Object |
clone()
Returns a copy of this path. |
boolean |
equals(Object obj)
Returns whether this path equals the given object. |
static IPath |
fromOSString(String pathString)
Constructs a new path from the given string path. |
static IPath |
fromPortableString(String pathString)
Constructs a new path from the given path string. |
String |
getDevice()
Returns the device id for this path, or null if this
path has no device id. |
String |
getFileExtension()
Returns the file extension portion of this path, or null if there is none.
|
int |
hashCode()
|
boolean |
hasTrailingSeparator()
Returns whether this path has a trailing separator. |
boolean |
isAbsolute()
Returns whether this path is an absolute path (ignoring any device id). |
boolean |
isEmpty()
Returns whether this path has no segments and is not a root path. |
boolean |
isPrefixOf(IPath anotherPath)
Returns whether this path is a prefix of the given path. |
boolean |
isRoot()
Returns whether this path is a root path. |
boolean |
isUNC()
Returns a boolean value indicating whether or not this path is considered to be in UNC form. |
boolean |
isValidPath(String path)
Returns whether the given string is syntactically correct as a path. |
boolean |
isValidSegment(String segment)
Returns whether the given string is valid as a segment in a path. |
String |
lastSegment()
Returns the last segment of this path, or null if it does not have any segments. |
IPath |
makeAbsolute()
Returns an absolute path with the segments and device id of this path. |
IPath |
makeRelative()
Returns a relative path with the segments and device id of this path. |
IPath |
makeUNC(boolean toUNC)
Return a new path which is the equivalent of this path converted to UNC form (if the given boolean is true) or this path not as a UNC path (if the given boolean is false). |
int |
matchingFirstSegments(IPath anotherPath)
Returns a count of the number of segments which match in this path and the given path (device ids are ignored), comparing in increasing segment number order. |
IPath |
removeFileExtension()
Returns a new path which is the same as this path but with the file extension removed. |
IPath |
removeFirstSegments(int count)
Returns a copy of this path with the given number of segments removed from the beginning. |
IPath |
removeLastSegments(int count)
Returns a copy of this path with the given number of segments removed from the end. |
IPath |
removeTrailingSeparator()
Returns a path with the same segments as this path but with a trailing separator removed. |
String |
segment(int index)
Returns the specified segment of this path, or null if the path does not have such a segment. |
int |
segmentCount()
Returns the number of segments in this path. |
String[] |
segments()
Returns the segments in this path in order. |
IPath |
setDevice(String value)
Returns a new path which is the same as this path but with the given device id. |
File |
toFile()
Returns a java.io.File corresponding to this path. |
String |
toOSString()
Returns a string representation of this path which uses the platform-dependent path separator defined by java.io.File.
|
String |
toPortableString()
Returns a platform-neutral string representation of this path. |
String |
toString()
Returns a string representation of this path, including its device id. |
IPath |
uptoSegment(int count)
Returns a copy of this path truncated after the given number of segments. |
| Methods inherited from class java.lang.Object |
|---|
finalize, getClass, notify, notifyAll, wait, wait, wait |
| Field Detail |
public static final Path EMPTY
public static final Path ROOT
| Constructor Detail |
public Path(String fullPath)
fullPath - the string pathisValidPath(String)
public Path(String device,
String path)
device - the device idpath - the string pathisValidPath(String),
setDevice(String)| Method Detail |
public static IPath fromOSString(String pathString)
pathString - the portable string pathIPath.toPortableString()public static IPath fromPortableString(String pathString)
IPath.toPortableString.
pathString - the portable path stringIPath.toPortableString()public IPath addFileExtension(String extension)
IPathThe file extension portion is defined as the string following the last period (".") character in the last segment. The given extension should not include a leading ".".
addFileExtension in interface IPathextension - the file extension to append
public IPath addTrailingSeparator()
IPathIf this path already has a trailing separator, this path is returned.
addTrailingSeparator in interface IPathIPath.hasTrailingSeparator(),
IPath.removeTrailingSeparator()public IPath append(IPath tail)
IPath
append in interface IPathtail - the path to concatenate
public IPath append(String tail)
IPath
append in interface IPathtail - the string path to concatenate
IPath.isValidPath(String)public Object clone()
IPath
clone in interface IPathpublic boolean equals(Object obj)
IPathEquality for paths is defined to be: same sequence of segments, same absolute/relative status, and same device. Trailing separators are disregarded. Paths are not generally considered equal to objects other than paths.
equals in interface IPathpublic String getDevice()
IPathnull if this
path has no device id. Note that the result will end in ':'.
getDevice in interface IPathnullIPath.setDevice(String)public String getFileExtension()
IPathnull if there is none.
The file extension portion is defined as the string following the last period (".") character in the last segment. If there is no period in the last segment, the path has no file extension portion. If the last segment ends in a period, the file extension portion is the empty string.
getFileExtension in interface IPathnullpublic int hashCode()
public boolean hasTrailingSeparator()
IPathNote: In the root path ("/"), the separator is considered to be leading rather than trailing.
hasTrailingSeparator in interface IPathtrue if this path has a trailing
separator, and false otherwiseIPath.addTrailingSeparator(),
IPath.removeTrailingSeparator()public boolean isAbsolute()
IPath
Absolute paths start with a path separator.
A root path, like / or C:/,
is considered absolute. UNC paths are always absolute.
isAbsolute in interface IPathtrue if this path is an absolute path,
and false otherwisepublic boolean isEmpty()
IPath
isEmpty in interface IPathtrue if this path is empty,
and false otherwisepublic boolean isPrefixOf(IPath anotherPath)
IPathAn empty path is a prefix of all paths with the same device; a root path is a prefix of all absolute paths with the same device.
isPrefixOf in interface IPathanotherPath - the other path
true if this path is a prefix of the given path,
and false otherwisepublic boolean isRoot()
IPath
The root path is the absolute non-UNC path with zero segments;
e.g., / or C:/.
The separator is considered a leading separator, not a trailing one.
isRoot in interface IPathtrue if this path is a root path,
and false otherwisepublic boolean isUNC()
IPathPath.SEPARATOR.
isUNC in interface IPathpublic boolean isValidPath(String path)
IPath
isValidPath in interface IPathpath - the path to check
true if the given string is a valid path,
and false otherwiseIPath.isValidSegment(String)public boolean isValidSegment(String segment)
IPath
isValidSegment in interface IPathsegment - the path segment to check
true if the given path segment is valid,
and false otherwisepublic String lastSegment()
IPathnull if it does not have any segments.
lastSegment in interface IPathnullpublic IPath makeAbsolute()
IPath
makeAbsolute in interface IPathpublic IPath makeRelative()
IPath
makeRelative in interface IPathpublic IPath makeUNC(boolean toUNC)
IPathPath.SEPARATOR. If not UNC, the
first 2 characters of the returned path string will not be Path.SEPARATOR.
makeUNC in interface IPathtoUNC - true if converting to UNC, false otherwise
public int matchingFirstSegments(IPath anotherPath)
IPath
matchingFirstSegments in interface IPathanotherPath - the other path
public IPath removeFileExtension()
IPathThe file extension portion is defined as the string following the last period (".") character in the last segment. If there is no period in the last segment, the path has no file extension portion. If the last segment ends in a period, the file extension portion is the empty string.
removeFileExtension in interface IPathpublic IPath removeFirstSegments(int count)
IPath
removeFirstSegments in interface IPathcount - the number of segments to remove
public IPath removeLastSegments(int count)
IPathIf this path has a trailing separator, it will still have a trailing separator after the last segments are removed (assuming there are some segments left). If there is no trailing separator, the result will not have a trailing separator. If the number equals or exceeds the number of segments in this path, a path with no segments is returned.
removeLastSegments in interface IPathcount - the number of segments to remove
public IPath removeTrailingSeparator()
IPathIf this path does not have a trailing separator, this path is returned.
removeTrailingSeparator in interface IPathIPath.addTrailingSeparator(),
IPath.hasTrailingSeparator()public String segment(int index)
IPathnull if the path does not have such a segment.
segment in interface IPathindex - the 0-based segment index
nullpublic int segmentCount()
IPathNote that both root and empty paths have 0 segments.
segmentCount in interface IPathpublic String[] segments()
IPath
segments in interface IPathpublic IPath setDevice(String value)
IPathnull.
For example, "C:" and "Server/Volume:" are typical device ids.
setDevice in interface IPathvalue - the device id or null
IPath.getDevice()public File toFile()
IPathjava.io.File corresponding to this path.
toFile in interface IPathpublic String toOSString()
IPathjava.io.File.
This method is like toString() except that the
latter always uses the same separator (/) regardless of platform.
This string is suitable for passing to java.io.File(String).
toOSString in interface IPathpublic String toPortableString()
IPathPath#fromPortableString(String)
constructor to produce the exact same path on any platform.
This string is suitable for passing to Path#fromPortableString(String).
toPortableString in interface IPathfromPortableString(String)public String toString()
IPathExample result strings (without and with device id):
"/foo/bar.txt" "bar.txt" "/foo/" "foo/" "" "/" "C:/foo/bar.txt" "C:bar.txt" "C:/foo/" "C:foo/" "C:" "C:/"This string is suitable for passing to
Path(String).
toString in interface IPathpublic IPath uptoSegment(int count)
IPathIf this path has a trailing separator, the result will too (assuming there are some segments left). If there is no trailing separator, the result will not have a trailing separator. Copying up to segment zero simply means making an copy with no path segments.
uptoSegment in interface IPathcount - the segment number at which to truncate the path
|
Eclipse Platform Release 3.3 |
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||||
Guidelines for using Eclipse APIs.
Copyright (c) IBM Corp. and others 2000, 2007. All rights reserved.