Class AbstractGetAclServlet

java.lang.Object
jakarta.servlet.GenericServlet
org.apache.sling.api.servlets.SlingJakartaSafeMethodsServlet
org.apache.sling.api.servlets.SlingJakartaAllMethodsServlet
All Implemented Interfaces:
jakarta.servlet.Servlet, jakarta.servlet.ServletConfig, Serializable
Direct Known Subclasses:
GetAclServlet, GetEffectiveAclServlet

public abstract class AbstractGetAclServlet extends AbstractAccessGetServlet
See Also:
  • Constructor Details

    • AbstractGetAclServlet

      public AbstractGetAclServlet()
  • Method Details

    • internalJson

      protected jakarta.json.JsonObject internalJson(javax.jcr.Session session, String resourcePath, String principalId) throws javax.jcr.RepositoryException
      Specified by:
      internalJson in class AbstractAccessGetServlet
      Throws:
      javax.jcr.RepositoryException
    • internalGetAcl

      protected jakarta.json.JsonObject internalGetAcl(javax.jcr.Session jcrSession, String resourcePath) throws javax.jcr.RepositoryException
      Throws:
      javax.jcr.RepositoryException
    • convertToJson

      protected jakarta.json.JsonObjectBuilder convertToJson(List<Map.Entry<Principal,Map<javax.jcr.security.Privilege,LocalPrivilege>>> entrySetList, Map<Principal,Map<DeclarationType,Set<String>>> declaredAtPaths)
    • addExtraInfo

      protected void addExtraInfo(jakarta.json.JsonObjectBuilder principalJson, Principal principal, Map<Principal,Map<DeclarationType,Set<String>>> principalToDeclaredAtPaths)
      Override to add additional data to the principal object
      Parameters:
      principalJson - the current principal JSON builder
      principal - the current principal
      principalToDeclaredAtPaths - a map of principal the paths where ACEs are declared
    • getAccessControlEntriesMap

      protected abstract Map<String,List<javax.jcr.security.AccessControlEntry>> getAccessControlEntriesMap(javax.jcr.Session session, String absPath, Map<Principal,Map<DeclarationType,Set<String>>> declaredAtPaths) throws javax.jcr.RepositoryException
      Throws:
      javax.jcr.RepositoryException