@AlfrescoPublicApi public final class Path extends Object implements Iterable<Path.Element>, Serializable
/x/y/zIn the above example, there will be 4 elements, the first being a reference to the root node, followed by qname elements for x, y and z.
Methods and constructors are available to construct a Path
instance
from a path string or by building the path incrementally, including the ability to
append and prepend path elements.
Path elements supported:
Modifier and Type | Class and Description |
---|---|
static class |
Path.AttributeElement
Represents a qualified path to an attribute,
including the sibling for repeated properties/attributes to retrieve e.g.
|
static class |
Path.ChildAssocElement
Represents a qualified path between a parent and a child node,
including the sibling to retrieve e.g.
|
static class |
Path.DescendentOrSelfElement
Represents the // or /descendant-or-self::node() xpath element
|
static class |
Path.Element
Represents a path element.
|
static class |
Path.ParentElement
Represents the /.. xpath element
|
static class |
Path.SelfElement
Represents the /. xpath element
|
Constructor and Description |
---|
Path() |
Modifier and Type | Method and Description |
---|---|
Path |
append(Path.Element pathElement)
Appends a path element to the end of the path
|
Path |
append(Path path)
Append the given path of this path.
|
boolean |
equals(Object o)
Override equals to check equality of Path instances
|
Path.Element |
first() |
Path.Element |
get(int n) |
Path |
getBaseNamePath(TenantService tenantService) |
int |
hashCode()
Override hashCode to check hash equality of Path instances
|
Iterator<Path.Element> |
iterator() |
Path.Element |
last() |
Path |
prepend(Path.Element pathElement)
Add a path element to the beginning of the path.
|
Path |
prepend(Path path)
Merge the given path into the beginning of this path.
|
int |
size() |
Path |
subPath(int depth)
Return a new Path representing this path to the specified depth
|
Path |
subPath(int start,
int end)
Return a new Path representing this path to the specified depth
For example, subPath(2, 4) would return the third and forth elements in the Path.
|
String |
toDisplayPath(NodeService nodeService,
PermissionService permissionService)
Return the human readable form of the specified node Path.
|
String |
toPrefixString(NamespacePrefixResolver resolver) |
String |
toString() |
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
forEach, spliterator
public Iterator<Path.Element> iterator()
iterator
in interface Iterable<Path.Element>
public Path prepend(Path.Element pathElement)
pathElement
- Path.Elementpublic Path prepend(Path path)
path
- Pathpublic Path append(Path.Element pathElement)
pathElement
- Path.Elementpublic Path append(Path path)
path
- Pathpublic Path.Element first()
public Path.Element last()
public int size()
public Path.Element get(int n)
public String toString()
public String toPrefixString(NamespacePrefixResolver resolver)
public String toDisplayPath(NodeService nodeService, PermissionService permissionService)
public Path subPath(int depth)
depth
- the path depth (0 based)public Path subPath(int start, int end)
start
- position (0 based)end
- position (0 based)public boolean equals(Object o)
public int hashCode()
public Path getBaseNamePath(TenantService tenantService)
Copyright © 2005–2018 Alfresco Software. All rights reserved.