org.apache.jackrabbit.core
Class PathMap

java.lang.Object
  extended byorg.apache.jackrabbit.core.PathMap

public class PathMap
extends Object

Generic path map that associates information with the individual path elements of a path.


Nested Class Summary
static class PathMap.Element
          Internal class holding the object associated with a certain path element.
static interface PathMap.ElementVisitor
          Element visitor used in traverse(org.apache.jackrabbit.core.PathMap.ElementVisitor, boolean)
 
Constructor Summary
PathMap()
           
 
Method Summary
 PathMap.Element map(Path path, boolean exact)
          Map a path to a child.
 PathMap.Element put(Path path)
          Create an empty child given by its path.
 PathMap.Element put(Path path, Object obj)
          Create an element given by its path.
 void put(Path path, PathMap.Element element)
          Put an element given by its path.
 void traverse(PathMap.ElementVisitor visitor, boolean includeEmpty)
          Traverse the path map and call back requester.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PathMap

public PathMap()
Method Detail

map

public PathMap.Element map(Path path,
                           boolean exact)
Map a path to a child. If exact is false, returns the last available item along the path that is stored in the map.

Parameters:
path - path to map
exact - flag indicating whether an exact match is required
Returns:
child, maybe null if exact is true

put

public PathMap.Element put(Path path,
                           Object obj)
Create an element given by its path. The path map will create any necessary intermediate elements.

Parameters:
path - path to child
obj - object to store at destination

put

public void put(Path path,
                PathMap.Element element)
Put an element given by its path. The path map will create any necessary intermediate elements.

Parameters:
path - path to child
element - element to store at destination

put

public PathMap.Element put(Path path)
Create an empty child given by its path.

Parameters:
path - path to child

traverse

public void traverse(PathMap.ElementVisitor visitor,
                     boolean includeEmpty)
Traverse the path map and call back requester.

Parameters:
includeEmpty - if true invoke call back on every child regardless, whether the associated object is empty or not; otherwise call back on non-empty children only


Copyright © 2004-2006 The Apache Software Foundation. All Rights Reserved.