Interface PathMapper

  • All Known Subinterfaces:
    NamePathMapper
    All Known Implementing Classes:
    NamePathMapper.Default, NamePathMapperImpl, SessionContext

    @ProviderType
    public interface PathMapper
    PathMapper instances provide methods for mapping paths from their JCR string representation to their Oak representation and vice versa. The Oak representation of a path consists of an optional forward slash followed by the names of the respective items in the Tree separated by forward slashes.
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      @NotNull String getExpandedJcrPath​(@NotNull String oakPath)
      Returns the JCR path in expanded form for the given Oak path.
      @NotNull String getJcrPath​(String oakPath)
      Returns the JCR path for the given Oak path.
      @Nullable String getOakPath​(String jcrPath)
      Returns the Oak path for the given JCR path, or null if no such mapping exists because the given JCR path contains a name element with an unknown namespace URI or prefix, or is otherwise invalid.
    • Method Detail

      • getOakPath

        @Nullable
        @Nullable String getOakPath​(String jcrPath)
        Returns the Oak path for the given JCR path, or null if no such mapping exists because the given JCR path contains a name element with an unknown namespace URI or prefix, or is otherwise invalid.
        Parameters:
        jcrPath - JCR path
        Returns:
        Oak path, or null
      • getJcrPath

        @NotNull
        @NotNull String getJcrPath​(String oakPath)
        Returns the JCR path for the given Oak path. The given path is expected to have come from a valid Oak repository that contains only valid paths whose name elements only use proper namespace mappings. If that's not the case, either a programming error or a repository corruption has occurred and an appropriate unchecked exception gets thrown.
        Parameters:
        oakPath - Oak path
        Returns:
        JCR path
      • getExpandedJcrPath

        @NotNull
        @NotNull String getExpandedJcrPath​(@NotNull
                                           @NotNull String oakPath)
        Returns the JCR path in expanded form for the given Oak path. The given path is expected to have come from a valid Oak repository that contains only valid names with proper namespace mappings. If that's not the case, either a programming error or a repository corruption has occurred and an appropriate unchecked exception gets thrown.
        Parameters:
        oakPath - Oak path
        Returns:
        JCR path in expanded form
        Throws:
        IllegalStateException - in case the namespace URI for the given Oak name cannot be resolved
        Since:
        Oak 1.78.0
        See Also:
        JCR 2.0, 3.2.5.1 Expanded Form