|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.jackrabbit.core.HierarchyManagerImpl
HierarchyManagerImpl
...
Field Summary | |
protected NamespaceResolver |
nsResolver
|
protected ItemStateManager |
provider
|
protected NodeId |
rootNodeId
|
Constructor Summary | |
HierarchyManagerImpl(String rootNodeUUID,
ItemStateManager provider,
NamespaceResolver nsResolver)
|
Method Summary | |
protected void |
buildPath(Path.PathBuilder builder,
ItemState state)
Adds the path element of an item id to the path currently being built. |
protected NodeState.ChildNodeEntry |
getChildNodeEntry(NodeState parent,
QName name,
int index)
Returns the ChildNodeEntry of parent with the
specified name and index or null
if there's no such entry. |
protected NodeState.ChildNodeEntry |
getChildNodeEntry(NodeState parent,
String uuid)
Returns the ChildNodeEntry of parent with the
specified uuid or null if there's no such entry. |
int |
getDepth(ItemId id)
Returns the depth of the specified item which is equivalent to getPath(id).getAncestorCount() . The depth reflects the
absolute hierarchy level. |
protected ItemState |
getItemState(ItemId id)
Return an item state, given its item id. |
QName |
getName(ItemId itemId)
Returns the name of the specified item. |
NamespaceResolver |
getNamespaceResolver()
|
protected String |
getParentUUID(ItemState state)
Returns the parentUUID of the given item. |
Path |
getPath(ItemId id)
Returns the path to the given item. |
int |
getRelativeDepth(NodeId ancestorId,
ItemId descendantId)
Returns the depth of the specified descendant relative to the given ancestor. If ancestorId and descendantId
denote the same item 0 is returned. If ancestorId does not
denote an ancestor -1 is returned. |
NodeId |
getRootNodeId()
|
protected boolean |
hasItemState(ItemId id)
Determines whether an item state for a given item id exists. |
boolean |
isAncestor(NodeId nodeId,
ItemId itemId)
Determines whether the node with the specified nodeId
is an ancestor of the item denoted by the given itemId .
This is equivalent to
getPath(nodeId).isAncestorOf(getPath(itemId)) . |
ItemId |
resolvePath(Path path)
Resolves a path into an item id. |
protected ItemId |
resolvePath(Path path,
ItemId id,
int next)
Resolve a path into an item id. |
protected ItemId |
resolvePath(Path path,
ItemState state,
int next)
Resolve a path into an item id. |
String |
safeGetJCRPath(ItemId id)
Failsafe translation of internal ItemId to JCR path for use
in error messages etc. |
String |
safeGetJCRPath(Path path)
Failsafe conversion of internal Path to JCR path for use in
error messages etc. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
protected final NodeId rootNodeId
protected final ItemStateManager provider
protected final NamespaceResolver nsResolver
Constructor Detail |
public HierarchyManagerImpl(String rootNodeUUID, ItemStateManager provider, NamespaceResolver nsResolver)
Method Detail |
public NodeId getRootNodeId()
public NamespaceResolver getNamespaceResolver()
public String safeGetJCRPath(Path path)
Path
to JCR path for use in
error messages etc.
path
- path to convert
public String safeGetJCRPath(ItemId id)
ItemId
to JCR path for use
in error messages etc.
id
- id to translate
protected ItemState getItemState(ItemId id) throws NoSuchItemStateException, ItemStateException
id
- item id
NoSuchItemStateException
- if the item does not exist
ItemStateException
- if an error occursZombieHierarchyManager.getItemState(ItemId)
protected boolean hasItemState(ItemId id)
id
- item id
true
if an item state exists, otherwise
false
ZombieHierarchyManager.hasItemState(ItemId)
protected String getParentUUID(ItemState state)
parentUUID
of the given item.
Low-level hook provided for specialized derived classes.
state
- item state
parentUUID
of the given itemZombieHierarchyManager.getParentUUID(ItemState)
protected NodeState.ChildNodeEntry getChildNodeEntry(NodeState parent, String uuid)
ChildNodeEntry
of parent
with the
specified uuid
or null
if there's no such entry.
Low-level hook provided for specialized derived classes.
parent
- node stateuuid
- uuid of child node entry
ChildNodeEntry
of parent
with
the specified uuid
or null
if there's
no such entry.ZombieHierarchyManager.getChildNodeEntry(NodeState, String)
protected NodeState.ChildNodeEntry getChildNodeEntry(NodeState parent, QName name, int index)
ChildNodeEntry
of parent
with the
specified name
and index
or null
if there's no such entry.
Low-level hook provided for specialized derived classes.
parent
- node statename
- name of child node entryindex
- index of child node entry
ChildNodeEntry
of parent
with
the specified name
and index
or
null
if there's no such entry.ZombieHierarchyManager.getChildNodeEntry(NodeState, QName, int)
protected ItemId resolvePath(Path path, ItemId id, int next) throws RepositoryException
path
- full path of item to resolveid
- intermediate item idnext
- next path element index to resolve
path
RepositoryException
protected ItemId resolvePath(Path path, ItemState state, int next) throws PathNotFoundException, ItemStateException
path
- full path of item to resolvestate
- intermediate statenext
- next path element index to resolve
path
PathNotFoundException
ItemStateException
protected void buildPath(Path.PathBuilder builder, ItemState state) throws ItemStateException, RepositoryException
builder
contains the path of state
.
builder
- builder currently being usedstate
- item to find path of
ItemStateException
RepositoryException
public ItemId resolvePath(Path path) throws PathNotFoundException, RepositoryException
resolvePath
in interface HierarchyManager
path
-
RepositoryException
PathNotFoundException
public Path getPath(ItemId id) throws ItemNotFoundException, RepositoryException
getPath
in interface HierarchyManager
id
-
RepositoryException
ItemNotFoundException
public QName getName(ItemId itemId) throws ItemNotFoundException, RepositoryException
getName
in interface HierarchyManager
itemId
- id of item whose name should be returned
ItemNotFoundException
RepositoryException
public int getDepth(ItemId id) throws ItemNotFoundException, RepositoryException
getPath(id).getAncestorCount()
. The depth reflects the
absolute hierarchy level.
getDepth
in interface HierarchyManager
id
- item id
RepositoryException
- if another error occurs
ItemNotFoundException
- if the specified id
does not
denote an existing item.public int getRelativeDepth(NodeId ancestorId, ItemId descendantId) throws ItemNotFoundException, RepositoryException
ancestorId
and descendantId
denote the same item 0 is returned. If ancestorId
does not
denote an ancestor -1 is returned.
getRelativeDepth
in interface HierarchyManager
ancestorId
- ancestor iddescendantId
- descendant id
ancestorId
does not
denote an ancestor of the item denoted by descendantId
(or itself).
ItemNotFoundException
- if either of the specified id's does not
denote an existing item.
RepositoryException
- if another error occurspublic boolean isAncestor(NodeId nodeId, ItemId itemId) throws ItemNotFoundException, RepositoryException
nodeId
is an ancestor of the item denoted by the given itemId
.
This is equivalent to
getPath(nodeId).isAncestorOf(getPath(itemId))
.
isAncestor
in interface HierarchyManager
nodeId
- node iditemId
- item id
true
if the node with the specified
nodeId
is an ancestor of the item denoted by the
given itemId
false otherwise
ItemNotFoundException
- if any of the specified id's does not
denote an existing item.
RepositoryException
- if another error occurs
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |