Class DeletePrincipalAcesServlet

  • All Implemented Interfaces:
    Serializable, javax.servlet.Servlet, javax.servlet.ServletConfig, DeleteAces, DeletePrincipalAces

    public class DeletePrincipalAcesServlet
    extends DeleteAcesServlet
    implements DeletePrincipalAces

    Sling Post Servlet implementation for deleting the principal ACE for a set of principals on a JCR resource.

    Rest Service Description

    Delete a set of Ace's from a node, the node is identified as a resource by the request url >resource<.deletePAce.html

    Transport Details:

    Methods

    • POST

    Post Parameters

    :applyTo
    An array of ace principal names to delete. Note the principal name is the primary key of the Ace in the Acl

    Response

    200
    Success.
    404
    The resource was not found.
    500
    Failure. HTML explains the failure.
    See Also:
    Serialized Form
    • Constructor Detail

      • DeletePrincipalAcesServlet

        public DeletePrincipalAcesServlet()
    • Method Detail

      • deletePrincipalAces

        public void deletePrincipalAces​(javax.jcr.Session jcrSession,
                                        String resourcePath,
                                        String[] principalNamesToDelete)
                                 throws javax.jcr.RepositoryException
        Description copied from interface: DeletePrincipalAces
        Deletes one or more pricipal ACEs from the access control list of a resource.
        Specified by:
        deletePrincipalAces in interface DeletePrincipalAces
        Parameters:
        jcrSession - the JCR session of the user updating the user
        resourcePath - The path of the resource to update the ACL for (required)
        principalNamesToDelete - An array of ace principal names to delete.. (required)
        Throws:
        javax.jcr.RepositoryException - if any errors applying the changes
      • deleteAces

        protected void deleteAces​(javax.jcr.Session jcrSession,
                                  String resourcePath,
                                  String[] principalNamesToDelete,
                                  List<org.apache.sling.servlets.post.Modification> changes)
                           throws javax.jcr.RepositoryException
        Overrides:
        deleteAces in class DeleteAcesServlet
        Throws:
        javax.jcr.RepositoryException
      • getAccessControlListOrNull

        protected org.apache.jackrabbit.api.security.authorization.PrincipalAccessControlList getAccessControlListOrNull​(org.apache.jackrabbit.api.security.JackrabbitAccessControlManager jacm,
                                                                                                                         Principal principal)
                                                                                                                  throws javax.jcr.RepositoryException
        Throws:
        javax.jcr.RepositoryException