|
ModeShape Distribution 3.0.0.Beta4 | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.modeshape.jcr.value.basic.AbstractPath
org.modeshape.jcr.value.basic.RootPath
@Immutable public class RootPath
Optimized implementation of Path
that serves as the root path.
Nested Class Summary |
---|
Nested classes/interfaces inherited from interface org.modeshape.jcr.value.Path |
---|
Path.Segment |
Field Summary | |
---|---|
static Path |
INSTANCE
|
Fields inherited from class org.modeshape.jcr.value.basic.AbstractPath |
---|
EMPTY_PATH_ITERATOR, SELF_PATH |
Fields inherited from interface org.modeshape.jcr.value.Path |
---|
DEFAULT_DECODER, DEFAULT_ENCODER, DEFAULT_INDEX, DELIMITER, DELIMITER_STR, IDENTIFIER_LEADING_TERMINAL, IDENTIFIER_TRAILING_TERMINAL, JSR283_DECODER, JSR283_ENCODER, NO_OP_DECODER, NO_OP_ENCODER, PARENT, PARENT_NAME, PARENT_SEGMENT, ROOT_NAME, ROOT_PATH, SELF, SELF_NAME, SELF_SEGMENT, URL_DECODER, URL_ENCODER |
Method Summary | |
---|---|
int |
compareTo(Path other)
|
boolean |
endsWith(Name nameOfLastSegment)
Determine if the path's Path.getLastSegment() has the supplied name and no SNS index . |
boolean |
endsWith(Name nameOfLastSegment,
int snsIndex)
Determine if the path's Path.getLastSegment() has the supplied name and SNS index . |
boolean |
equals(Object obj)
|
Path |
getAncestor(int degree)
Return the path to the ancestor of the supplied degree. |
Path |
getCanonicalPath()
Get the canonical form of this path. |
Path |
getCommonAncestor(Path that)
Find the lowest common ancestor of this path and the supplied path. |
Path.Segment |
getLastSegment()
Get the last segment in this path. |
Path |
getNormalizedPath()
Get a normalized path with as many ".." segments and all "." resolved. |
Path |
getParent()
Return the path to the parent, or this path if it is the root . |
Path.Segment |
getSegment(int index)
Get the segment at the supplied index. |
Path.Segment[] |
getSegmentsArray()
Obtain a copy of the segments in this path. |
List<Path.Segment> |
getSegmentsList()
Get an unmodifiable list of the path segments. |
protected Iterator<Path.Segment> |
getSegmentsOfParent()
Method used by AbstractPath.equals(Object) implementation to quickly get an Iterator over the segments in the
parent. |
String |
getString()
Get the string form of the object. |
String |
getString(NamespaceRegistry namespaceRegistry)
Get the string form of the object, using the supplied namespace registry to convert any namespace URIs to prefixes. |
String |
getString(NamespaceRegistry namespaceRegistry,
TextEncoder encoder)
Get the encoded string form of the object, using the supplied namespace registry to convert the any namespace URIs to prefixes. |
String |
getString(NamespaceRegistry namespaceRegistry,
TextEncoder encoder,
TextEncoder delimiterEncoder)
Get the encoded string form of the object, using the supplied namespace registry to convert the names' namespace URIs to prefixes and the supplied encoder to encode characters, and using the second delimiter to encode (or convert) the delimiter used between the namespace prefix and the local part of any names. |
String |
getString(TextEncoder encoder)
Get the encoded string form of the object, using the supplied encoder to encode characters. |
boolean |
hasSameAncestor(Path that)
Determine whether this path and the supplied path have the same immediate ancestor. |
boolean |
isAbsolute()
Return whether this path is an absolute path. |
boolean |
isAncestorOf(Path descendant)
Determine whether this path is an ancestor of the supplied path. |
boolean |
isAtOrAbove(Path other)
Determine whether this path is the same as to or a ancestor of the
supplied path. |
boolean |
isAtOrBelow(Path other)
Determine whether this path is the same as to or a descendant of the
supplied path. |
boolean |
isDescendantOf(Path ancestor)
Determine whether this path is an descendant of the supplied path. |
boolean |
isNormalized()
Return whether this path is normalized and contains no unnecessary "." segments and as few ".." segments as possible. |
boolean |
isRoot()
Return whether this path represents the root path. |
boolean |
isSameAs(Path other)
Determine whether this path represents the same as the supplied path. |
Iterator<Path.Segment> |
iterator()
|
Iterator<Path> |
pathsFromRoot()
Return an iterator that walks the paths from the root path down to this path. |
Path |
relativeToRoot()
Obtain a path that is relative to the root node. |
Path |
resolve(Path relativePath)
Get the absolute path by resolving the supplied relative (non-absolute) path against this absolute path. |
int |
size()
Return the number of segments in this path. |
Path |
subpath(int beginIndex)
Return a new path consisting of the segments starting at beginIndex index (inclusive). |
Path |
subpath(int beginIndex,
int endIndex)
Return a new path consisting of the segments between the beginIndex index (inclusive) and the endIndex
index (exclusive). |
Methods inherited from class org.modeshape.jcr.value.basic.AbstractPath |
---|
createSegmentsSubList, doGetString, hashCode, isIdentifier, isNormalized, relativeTo, resolveAgainst, toString |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static final Path INSTANCE
Method Detail |
---|
public Path getAncestor(int degree)
Path
x
is the path that is x
levels up along the path. For example, degree = 0
returns this path, while degree = 1
returns the parent of this path, degree = 2
returns the grandparent of this path, and so on. Note that the
result may be unexpected if this path is not normalized
, as a non-normalized path contains ".." and
"." segments.
protected Iterator<Path.Segment> getSegmentsOfParent()
AbstractPath
AbstractPath.equals(Object)
implementation to quickly get an Iterator over the segments in the
parent.
getSegmentsOfParent
in class AbstractPath
public Path getCanonicalPath()
Path
absolute
and Path.isNormalized()
.
getCanonicalPath
in interface Path
getCanonicalPath
in class AbstractPath
public Path getCommonAncestor(Path that)
Path
getCommonAncestor
in interface Path
getCommonAncestor
in class AbstractPath
that
- the other path
public Path.Segment getLastSegment()
Path
getLastSegment
in interface Path
getLastSegment
in class AbstractPath
public boolean endsWith(Name nameOfLastSegment)
Path
Path.getLastSegment()
has the supplied name and no SNS index
.
endsWith
in interface Path
endsWith
in class AbstractPath
nameOfLastSegment
- the name
public boolean endsWith(Name nameOfLastSegment, int snsIndex)
Path
Path.getLastSegment()
has the supplied name and SNS index
.
endsWith
in interface Path
endsWith
in class AbstractPath
nameOfLastSegment
- the namesnsIndex
- the SNS index
public Path getNormalizedPath()
Path
getNormalizedPath
in interface Path
getNormalizedPath
in class AbstractPath
public Path relativeToRoot()
Path
Path.relativeTo(Path)
with the root
path.
relativeToRoot
in interface Path
relativeToRoot
in class AbstractPath
public Path resolve(Path relativePath)
Path
resolve
in interface Path
resolve
in class AbstractPath
relativePath
- the relative path that is to be resolved against this path
public Path getParent()
Path
root
. This is an efficient operation that does
not require copying any data.
getParent
in interface Path
getParent
in class AbstractPath
public Path.Segment getSegment(int index)
Path
getSegment
in interface Path
getSegment
in class AbstractPath
index
- the index
public Path.Segment[] getSegmentsArray()
Path
getSegmentsArray
in interface Path
getSegmentsArray
in class AbstractPath
public List<Path.Segment> getSegmentsList()
Path
public String getString()
Readable
default encoder
is used to encode characters.
getString
in interface Readable
getString
in class AbstractPath
Readable.getString(TextEncoder)
public String getString(TextEncoder encoder)
Readable
getString
in interface Readable
getString
in class AbstractPath
encoder
- the encoder to use, or null if the default encoder
should be used
Readable.getString()
public String getString(NamespaceRegistry namespaceRegistry)
Readable
default encoder
is used to encode characters.
getString
in interface Readable
getString
in class AbstractPath
namespaceRegistry
- the namespace registry that should be used to obtain the prefix for any namespace URIs
Readable.getString(NamespaceRegistry,TextEncoder)
public String getString(NamespaceRegistry namespaceRegistry, TextEncoder encoder)
Readable
getString
in interface Readable
getString
in class AbstractPath
namespaceRegistry
- the namespace registry that should be used to obtain the prefix for the namespace URIsencoder
- the encoder to use, or null if the default encoder
should be used
Readable.getString(NamespaceRegistry)
public String getString(NamespaceRegistry namespaceRegistry, TextEncoder encoder, TextEncoder delimiterEncoder)
Readable
getString
in interface Readable
getString
in class AbstractPath
namespaceRegistry
- the namespace registry that should be used to obtain the prefix for the namespace URIs in the
segment names
encoder
- the encoder to use for encoding the local part and namespace prefix of any names, or null if the
default encoder
should be useddelimiterEncoder
- the encoder to use for encoding the delimiter between the local part and namespace prefix of any
names, or null if the standard delimiter should be used
Readable.getString(NamespaceRegistry)
,
Readable.getString(NamespaceRegistry, TextEncoder)
public boolean hasSameAncestor(Path that)
Path
hasSameAncestor
in interface Path
hasSameAncestor
in class AbstractPath
that
- the other path
public boolean isAbsolute()
Path
absolute
. An absolute path
starts with a "/".
public boolean isAncestorOf(Path descendant)
Path
isAncestorOf
in interface Path
isAncestorOf
in class AbstractPath
descendant
- the path that may be the descendant; may be null
public boolean isAtOrAbove(Path other)
Path
same as
to or a ancestor of
the
supplied path. This method is equivalent to (but may be more efficient than) calling isSame(other) ||
isAncestor(other)
, and is a convenience method that is identical to calling other.isAtOrBelow(this)
.
isAtOrAbove
in interface Path
isAtOrAbove
in class AbstractPath
other
- the other path to compare with this path; may be null
public boolean isAtOrBelow(Path other)
Path
same as
to or a descendant of
the
supplied path. This method is equivalent to (but may be more efficient than) calling isSame(other) ||
isAncestor(other)
.
isAtOrBelow
in interface Path
isAtOrBelow
in class AbstractPath
other
- the other path to compare with this path; may be null
public boolean isDescendantOf(Path ancestor)
Path
isDescendantOf
in interface Path
isDescendantOf
in class AbstractPath
ancestor
- the path that may be the ancestor; may be null
public boolean isNormalized()
Path
public boolean isRoot()
Path
public boolean isSameAs(Path other)
Path
this.compareTo(other) == 0
.
isSameAs
in interface Path
isSameAs
in class AbstractPath
other
- the other path to compare with this path; may be null
public Iterator<Path.Segment> iterator()
iterator
in interface Iterable<Path.Segment>
iterator
in class AbstractPath
public Iterator<Path> pathsFromRoot()
Path
pathsFromRoot
in interface Path
pathsFromRoot
in class AbstractPath
public int size()
Path
public Path subpath(int beginIndex)
Path
beginIndex
index (inclusive). This is equivalent to
calling path.subpath(beginIndex,path.size()-1)
.
subpath
in interface Path
subpath
in class AbstractPath
beginIndex
- the beginning index, inclusive.
public Path subpath(int beginIndex, int endIndex)
Path
beginIndex
index (inclusive) and the endIndex
index (exclusive).
subpath
in interface Path
subpath
in class AbstractPath
beginIndex
- the beginning index, inclusive.endIndex
- the ending index, exclusive.
public int compareTo(Path other)
compareTo
in interface Comparable<Path>
compareTo
in class AbstractPath
public boolean equals(Object obj)
equals
in class AbstractPath
|
ModeShape Distribution 3.0.0.Beta4 | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |