Class PathMap<T>


  • public class PathMap<T>
    extends Object
    Generic path map that associates information with the individual path elements of a path.
    • Constructor Detail

      • PathMap

        public PathMap()
    • Method Detail

      • map

        public PathMap.Element<T> 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<T> put​(Path path,
                                      T 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<T> 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<T> put​(Path path)
        Create an empty child given by its path.
        Parameters:
        path - path to child
      • traverse

        public void traverse​(PathMap.ElementVisitor<T> visitor,
                             boolean includeEmpty)
        Traverse the path map and call back requester. This method visits the root first, then its children.
        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