Interface PrivilegeManager

  • All Known Implementing Classes:
    PrivilegeManagerDelegator

    @ProviderType
    public interface PrivilegeManager
    PrivilegeManager is a jackrabbit specific extensions to JCR access control management that allows to retrieve privileges known by this JCR implementation and to register new custom privileges according to implementation specific rules.
    See Also:
    AccessControlManager.privilegeFromName(String)
    • Method Detail

      • registerPrivilege

        @NotNull
        @NotNull Privilege registerPrivilege​(@NotNull
                                             @NotNull String privilegeName,
                                             boolean isAbstract,
                                             @Nullable
                                             @Nullable String[] declaredAggregateNames)
                                      throws AccessDeniedException,
                                             NamespaceException,
                                             RepositoryException
        Creates and registers a new custom privilege with the specified characteristics and returns the new privilege.

        If the registration succeeds, the changes are immediately effective; there is no need to call save.

        Parameters:
        privilegeName - The name of the new custom privilege.
        isAbstract - Boolean flag indicating if the privilege is abstract.
        declaredAggregateNames - An array of privilege names referring to registered privileges being aggregated by this new custom privilege. In case of a non aggregate privilege an empty array should be passed.
        Returns:
        the new privilege.
        Throws:
        AccessDeniedException - If the session this manager has been created for is not allowed to register new privileges.
        NamespaceException - If any of the specified JCR names is illegal.
        RepositoryException - If the privilege could not be registered due to any implementation specific constraint violations or if persisting the custom privilege fails.