Package org.apache.sling.jcr.jackrabbit.accessmanager.post

# Class AbstractGetAclServlet

java.lang.Object
jakarta.servlet.GenericServlet
org.apache.sling.api.servlets.SlingJakartaSafeMethodsServlet
org.apache.sling.api.servlets.SlingJakartaAllMethodsServlet
org.apache.sling.jcr.jackrabbit.accessmanager.post.AbstractAccessServlet
org.apache.sling.jcr.jackrabbit.accessmanager.post.AbstractAccessGetServlet
org.apache.sling.jcr.jackrabbit.accessmanager.post.AbstractGetAclServlet

All Implemented Interfaces:
  `jakarta.servlet.Servlet`, `jakarta.servlet.ServletConfig`, `Serializable`

Direct Known Subclasses:
  `GetAclServlet`, `GetEffectiveAclServlet`

public abstract class AbstractGetAclServlet extends AbstractAccessGetServlet

See Also:
  - Serialized Form

## Constructor Summary

Constructors
Constructor
Description
`AbstractGetAclServlet()`

## Method Summary

Modifier and Type
Method
Description
`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
`protected jakarta.json.JsonObjectBuilder`
`convertToJson(List<Map.Entry<Principal,Map<javax.jcr.security.Privilege,LocalPrivilege>>> entrySetList, Map<Principal,Map<DeclarationType,Set<String>>> declaredAtPaths)`
`protected abstract Map<String,List<javax.jcr.security.AccessControlEntry>>`
`getAccessControlEntriesMap(javax.jcr.Session session, String absPath, Map<Principal,Map<DeclarationType,Set<String>>> declaredAtPaths)`
`protected jakarta.json.JsonObject`
`internalGetAcl(javax.jcr.Session jcrSession, String resourcePath)`
`protected jakarta.json.JsonObject`
`internalJson(javax.jcr.Session session, String resourcePath, String principalId)`

### Methods inherited from class org.apache.sling.jcr.jackrabbit.accessmanager.post.AbstractAccessGetServlet

`doGet, entriesSortedByEffectivePath, getItemPath, processACE, validateArgs, validateArgs, validateResourcePath`

### Methods inherited from class org.apache.sling.jcr.jackrabbit.accessmanager.post.AbstractAccessServlet

`bindRestrictionProvider, getRestrictionProvider, unbindRestrictionProvider`

### Methods inherited from class org.apache.sling.api.servlets.SlingJakartaAllMethodsServlet

`doDelete, doPost, doPut, getAllowedRequestMethods, isMethodValid, mayService`

### Methods inherited from class org.apache.sling.api.servlets.SlingJakartaSafeMethodsServlet

`doGeneric, doHead, doOptions, doTrace, getServletInfo, handleMethodNotImplemented, service, service`

### Methods inherited from class jakarta.servlet.GenericServlet

`destroy, getInitParameter, getInitParameterNames, getServletConfig, getServletContext, getServletName, init, init, log, log`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## 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`