public abstract class AbstractAccessPostServlet extends SlingAllMethodsServlet
| Constructor and Description |
|---|
AbstractAccessPostServlet() |
| Modifier and Type | Method and Description |
|---|---|
protected AbstractPostResponse |
createHtmlResponse(SlingHttpServletRequest req)
Creates an instance of a HtmlResponse.
|
protected void |
doPost(SlingHttpServletRequest request,
SlingHttpServletResponse httpResponse)
Called by the
SlingAllMethodsServlet.mayService(SlingHttpServletRequest, SlingHttpServletResponse) method to
handle an HTTP POST request. |
protected String |
externalizePath(SlingHttpServletRequest request,
String path)
Returns an external form of the given path prepending the context path
and appending a display extension.
|
protected javax.jcr.security.AccessControlList |
getAccessControlList(javax.jcr.security.AccessControlManager accessControlManager,
String resourcePath,
boolean mayCreate)
Returns an
AccessControlList to edit for the node at the
given resourcePath. |
protected String |
getItemPath(SlingHttpServletRequest request)
Returns the path of the resource of the request as the item path.
|
protected String |
getRedirectUrl(javax.servlet.http.HttpServletRequest request,
AbstractPostResponse ctx)
compute redirect URL (SLING-126)
|
protected abstract void |
handleOperation(SlingHttpServletRequest request,
AbstractPostResponse response,
List<Modification> changes)
Extending Servlet should implement this operation to do the work
|
protected boolean |
isSetStatus(SlingHttpServletRequest request) |
doDelete, doPut, getAllowedRequestMethods, isMethodValid, mayServicedoGeneric, doGet, doHead, doOptions, doTrace, getServletInfo, handleMethodNotImplemented, service, serviceprotected void doPost(SlingHttpServletRequest request, SlingHttpServletResponse httpResponse) throws javax.servlet.ServletException, IOException
SlingAllMethodsServletSlingAllMethodsServlet.mayService(SlingHttpServletRequest, SlingHttpServletResponse) method to
handle an HTTP POST request.
This default implementation reports back to the client that the method is not supported.
Implementations of this class should overwrite this method with their implementation for the HTTP POST method support.
doPost in class SlingAllMethodsServletrequest - The HTTP requesthttpResponse - The HTTP responsejavax.servlet.ServletException - Not thrown by this implementation.IOException - If the error status cannot be reported back to the
client.protected AbstractPostResponse createHtmlResponse(SlingHttpServletRequest req)
req - The request being servicedorg.apache.sling.servlets.post.impl.helper.JSONResponse if any of these conditions are true:
HtmlResponse otherwiseprotected abstract void handleOperation(SlingHttpServletRequest request, AbstractPostResponse response, List<Modification> changes) throws javax.jcr.RepositoryException
request - the sling http request to processresponse - the responsechanges - javax.jcr.RepositoryExceptionprotected String getRedirectUrl(javax.servlet.http.HttpServletRequest request, AbstractPostResponse ctx)
ctx - the post processornullprotected boolean isSetStatus(SlingHttpServletRequest request)
protected String getItemPath(SlingHttpServletRequest request)
This method may be overwritten by extension if the operation has different requirements on path processing.
protected final String externalizePath(SlingHttpServletRequest request, String path)
path - the path to externalizeprotected javax.jcr.security.AccessControlList getAccessControlList(javax.jcr.security.AccessControlManager accessControlManager,
String resourcePath,
boolean mayCreate)
throws javax.jcr.RepositoryException
AccessControlList to edit for the node at the
given resourcePath.accessControlManager - The manager providing access control listsresourcePath - The node path for which to return an access control
listmayCreate - true if an access control list should be
created if the node does not have one yet.AccessControlList to modify to control access to
the node.javax.jcr.RepositoryException - If the access control manager does not
provide a AccessControlPolicy which is an
AccessControlList.Copyright © 2017 The Apache Software Foundation. All rights reserved.