Class ReadWriteVersionManager

    • Constructor Detail

      • ReadWriteVersionManager

        public ReadWriteVersionManager​(NodeBuilder versionStorageNode,
                                       NodeBuilder workspaceRoot)
    • Method Detail

      • getOrCreateVersionHistory

        @NotNull
        public @NotNull NodeBuilder getOrCreateVersionHistory​(@NotNull
                                                              @NotNull NodeBuilder versionable,
                                                              @NotNull
                                                              @NotNull java.util.Map<java.lang.String,​java.lang.Object> infoMap)
        Gets or creates the version history for the given versionable node.
        Parameters:
        versionable - the versionable node.
        infoMap - The additional information as provided by CommitInfo.getInfo()
        Returns:
        the version history node.
        Throws:
        java.lang.IllegalArgumentException - if the given node does not have a jcr:uuid property.
      • checkout

        public void checkout​(NodeBuilder versionable)
      • restore

        public void restore​(@NotNull
                            @NotNull NodeBuilder versionable,
                            @NotNull
                            @NotNull java.lang.String versionUUID,
                            @Nullable
                            @Nullable org.apache.jackrabbit.oak.plugins.version.VersionSelector selector)
                     throws CommitFailedException
        Throws:
        CommitFailedException
      • removeVersionLabel

        public void removeVersionLabel​(@NotNull
                                       @NotNull java.lang.String historyRelPath,
                                       @NotNull
                                       @NotNull java.lang.String label)
                                throws CommitFailedException
        Removes a version label from the jcr:versionLabels node of the referenced version history.
        Parameters:
        historyRelPath - relative path from the jcr:versionStorage node to the version history node.
        label - the version label.
        Throws:
        CommitFailedException - if there is no such version history or if there is no label with the given name.