Class PathSet

  • All Implemented Interfaces:
    Iterable<Path>

    public class PathSet
    extends Object
    implements Iterable<Path>
    Simple helper class for path matching against a set of paths.
    Since:
    1.0.0 (Sling API Bundle 2.11.0)
    • Field Detail

      • EMPTY_SET

        public static final PathSet EMPTY_SET
        Empty path set.
    • Method Detail

      • fromPathCollection

        public static PathSet fromPathCollection​(Collection<Path> paths)
        Create a path set from a collection of path objects
        Parameters:
        paths - The collection of path objects
        Returns:
        The path set
      • fromPaths

        public static PathSet fromPaths​(Path... paths)
        Create a path set from a collection of path objects
        Parameters:
        paths - The collection of path objects
        Returns:
        The path set
      • fromStringCollection

        public static PathSet fromStringCollection​(Collection<String> paths)
        Create a path set from a collection of strings
        Parameters:
        paths - The collection of strings
        Returns:
        The path set
      • fromStrings

        public static PathSet fromStrings​(String... strings)
        Create a path set from a collection of strings
        Parameters:
        strings - The array of strings
        Returns:
        The path set
      • matches

        public Path matches​(String otherPath)
        Check whether the provided path is in the sub tree of any of the paths in this set.
        Parameters:
        otherPath - The path to match
        Returns:
        The path which matches the provided path, null otherwise.
        See Also:
        Path.matches(String)
      • getSubset

        public PathSet getSubset​(String path)
        Generate a path set of paths from this set which are in the sub tree of the provided path
        Parameters:
        path - The base path
        Returns:
        Path set, might be empty
      • getSubset

        public PathSet getSubset​(Path path)
        Generate a path set of paths from this set which are in the sub tree of the provided path
        Parameters:
        path - The base path
        Returns:
        Path set, might be empty
        Since:
        1.2.0 (Sling API Bundle 2.15.0)
      • getSubset

        public PathSet getSubset​(PathSet set)
        Generate a path set of paths from this set which are in at least one of the sub tree of the provided path set.
        Parameters:
        set - The base path set
        Returns:
        Path set
      • toStringSet

        public Set<String> toStringSet()
        Create a unmodifiable set of strings
        Returns:
        A set of strings
      • iterator

        public Iterator<Path> iterator()
        Return an unmodifiable iterator for the paths.
        Specified by:
        iterator in interface Iterable<Path>
        Returns:
        An iterator for the paths
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object