Class SlingWebDavServlet

java.lang.Object
javax.servlet.GenericServlet
javax.servlet.http.HttpServlet
org.apache.jackrabbit.webdav.server.AbstractWebdavServlet
org.apache.jackrabbit.webdav.simple.SimpleWebdavServlet
org.apache.sling.jcr.webdav.impl.servlets.SlingWebDavServlet
All Implemented Interfaces:
Serializable, javax.servlet.Servlet, javax.servlet.ServletConfig, org.apache.jackrabbit.webdav.DavConstants

public class SlingWebDavServlet extends org.apache.jackrabbit.webdav.simple.SimpleWebdavServlet
The SlingWebDavServlet implements the WebDAV protocol as a default servlet for Sling handling all WebDAV methods.
See Also:
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static @interface 
     
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final String
     
    static final boolean
     
    static final String
     
    static final String
     
    static final String
     
    static final String
     
    static final String
     
    static final String
     
    static final String
     

    Fields inherited from class org.apache.jackrabbit.webdav.simple.SimpleWebdavServlet

    CTX_ATTR_RESOURCE_PATH_PREFIX, INIT_PARAM_MIME_INFO, INIT_PARAM_RESOURCE_CONFIG, INIT_PARAM_RESOURCE_PATH_PREFIX

    Fields inherited from class org.apache.jackrabbit.webdav.server.AbstractWebdavServlet

    DEFAULT_AUTHENTICATE_HEADER, INIT_PARAM_AUTHENTICATE_HEADER, INIT_PARAM_CREATE_ABSOLUTE_URI, INIT_PARAM_CSRF_PROTECTION, INIT_PARAM_MISSING_AUTH_MAPPING

    Fields inherited from interface org.apache.jackrabbit.webdav.DavConstants

    creationDateFormat, DEPTH_0, DEPTH_1, DEPTH_INFINITY, DEPTH_INFINITY_S, HEADER_AUTHORIZATION, HEADER_CONTENT_LANGUAGE, HEADER_CONTENT_LENGTH, HEADER_CONTENT_TYPE, HEADER_DAV, HEADER_DEPTH, HEADER_DESTINATION, HEADER_ETAG, HEADER_IF, HEADER_LAST_MODIFIED, HEADER_LOCK_TOKEN, HEADER_OVERWRITE, HEADER_TIMEOUT, INFINITE_TIMEOUT, modificationDateFormat, NAMESPACE, OPAQUE_LOCK_TOKEN_PREFIX, PROPERTY_CREATIONDATE, PROPERTY_DISPLAYNAME, PROPERTY_GETCONTENTLANGUAGE, PROPERTY_GETCONTENTLENGTH, PROPERTY_GETCONTENTTYPE, PROPERTY_GETETAG, PROPERTY_GETLASTMODIFIED, PROPERTY_LOCKDISCOVERY, PROPERTY_RESOURCETYPE, PROPERTY_SOURCE, PROPERTY_SUPPORTEDLOCK, PROPFIND_ALL_PROP, PROPFIND_ALL_PROP_INCLUDE, PROPFIND_BY_PROPERTY, PROPFIND_PROPERTY_NAMES, TIMEOUT_INFINITE, UNDEFINED_TIME, UNDEFINED_TIMEOUT, XML_ACTIVELOCK, XML_ALLPROP, XML_COLLECTION, XML_DEPTH, XML_DST, XML_EXCLUSIVE, XML_HREF, XML_INCLUDE, XML_KEEPALIVE, XML_LINK, XML_LOCKENTRY, XML_LOCKINFO, XML_LOCKROOT, XML_LOCKSCOPE, XML_LOCKTOKEN, XML_LOCKTYPE, XML_MULTISTATUS, XML_OMIT, XML_OWNER, XML_PROP, XML_PROPERTYBEHAVIOR, XML_PROPERTYUPDATE, XML_PROPFIND, XML_PROPNAME, XML_PROPSTAT, XML_REMOVE, XML_RESPONSE, XML_RESPONSEDESCRIPTION, XML_SET, XML_SHARED, XML_SOURCE, XML_STATUS, XML_TIMEOUT, XML_WRITE
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected void
    activate(org.osgi.service.component.ComponentContext context, SlingWebDavServlet.Config config)
     
    void
    bindCopyMoveHandler(org.osgi.framework.ServiceReference copyMoveHandlerReference)
     
    void
    bindDeleteHandler(org.osgi.framework.ServiceReference deleteHandlerReference)
     
    void
    bindIOHandler(org.osgi.framework.ServiceReference ioHandlerReference)
     
    void
    bindPropertyHandler(org.osgi.framework.ServiceReference propertyHandlerReference)
     
    protected void
    deactivate(org.osgi.service.component.ComponentContext context)
     
    org.apache.jackrabbit.webdav.DavLocatorFactory
     
    javax.jcr.Repository
     
    org.apache.jackrabbit.server.SessionProvider
     
    void
     
    protected void
    sendUnauthorized(org.apache.jackrabbit.webdav.WebdavRequest request, org.apache.jackrabbit.webdav.WebdavResponse response, org.apache.jackrabbit.webdav.DavException error)
    Overridden as the base class uses sendError that we don't want (SLING-2443)
    void
    unbindCopyMoveHandler(org.osgi.framework.ServiceReference copyMoveHandlerReference)
     
    void
    unbindDeleteHandler(org.osgi.framework.ServiceReference deleteHandlerReference)
     
    void
    unbindIOHandler(org.osgi.framework.ServiceReference ioHandlerReference)
     
    void
    unbindPropertyHandler(org.osgi.framework.ServiceReference propertyHandlerReference)
     

    Methods inherited from class org.apache.jackrabbit.webdav.simple.SimpleWebdavServlet

    getCredentialsProvider, getDavSessionProvider, getLockManager, getPathPrefix, getPathPrefix, getResourceConfig, getResourceFactory, isPreconditionValid, setDavSessionProvider, setLocatorFactory, setLockManager, setResourceConfig, setResourceFactory, setSessionProvider

    Methods inherited from class org.apache.jackrabbit.webdav.server.AbstractWebdavServlet

    doAcl, doBaselineControl, doBind, doCheckin, doCheckout, doCopy, doDelete, doGet, doHead, doLabel, doLock, doMerge, doMkActivity, doMkCol, doMkWorkspace, doMove, doOptions, doOrderPatch, doPoll, doPost, doPropFind, doPropPatch, doPut, doRebind, doReport, doSearch, doSubscribe, doUnbind, doUncheckout, doUnlock, doUnsubscribe, doUpdate, doVersionControl, execute, getAuthenticateHeaderValue, getInputContext, getOutputContext, isCreateAbsoluteURI, service, validateDestination

    Methods inherited from class javax.servlet.http.HttpServlet

    doDelete, doGet, doHead, doOptions, doPost, doPut, doTrace, getLastModified, service

    Methods inherited from class javax.servlet.GenericServlet

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

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

  • Constructor Details

    • SlingWebDavServlet

      public SlingWebDavServlet()
  • Method Details

    • init

      public void init() throws javax.servlet.ServletException
      Overrides:
      init in class org.apache.jackrabbit.webdav.simple.SimpleWebdavServlet
      Throws:
      javax.servlet.ServletException
    • getRepository

      public javax.jcr.Repository getRepository()
      Specified by:
      getRepository in class org.apache.jackrabbit.webdav.simple.SimpleWebdavServlet
    • getLocatorFactory

      public org.apache.jackrabbit.webdav.DavLocatorFactory getLocatorFactory()
      Overrides:
      getLocatorFactory in class org.apache.jackrabbit.webdav.simple.SimpleWebdavServlet
    • getSessionProvider

      public org.apache.jackrabbit.server.SessionProvider getSessionProvider()
      Overrides:
      getSessionProvider in class org.apache.jackrabbit.webdav.simple.SimpleWebdavServlet
    • activate

      protected void activate(org.osgi.service.component.ComponentContext context, SlingWebDavServlet.Config config) throws org.osgi.service.http.NamespaceException, javax.servlet.ServletException
      Throws:
      org.osgi.service.http.NamespaceException
      javax.servlet.ServletException
    • deactivate

      protected void deactivate(org.osgi.service.component.ComponentContext context)
    • bindIOHandler

      public void bindIOHandler(org.osgi.framework.ServiceReference ioHandlerReference)
    • unbindIOHandler

      public void unbindIOHandler(org.osgi.framework.ServiceReference ioHandlerReference)
    • bindPropertyHandler

      public void bindPropertyHandler(org.osgi.framework.ServiceReference propertyHandlerReference)
    • unbindPropertyHandler

      public void unbindPropertyHandler(org.osgi.framework.ServiceReference propertyHandlerReference)
    • bindCopyMoveHandler

      public void bindCopyMoveHandler(org.osgi.framework.ServiceReference copyMoveHandlerReference)
    • unbindCopyMoveHandler

      public void unbindCopyMoveHandler(org.osgi.framework.ServiceReference copyMoveHandlerReference)
    • bindDeleteHandler

      public void bindDeleteHandler(org.osgi.framework.ServiceReference deleteHandlerReference)
    • unbindDeleteHandler

      public void unbindDeleteHandler(org.osgi.framework.ServiceReference deleteHandlerReference)
    • sendUnauthorized

      protected void sendUnauthorized(org.apache.jackrabbit.webdav.WebdavRequest request, org.apache.jackrabbit.webdav.WebdavResponse response, org.apache.jackrabbit.webdav.DavException error) throws IOException
      Overridden as the base class uses sendError that we don't want (SLING-2443)
      Overrides:
      sendUnauthorized in class org.apache.jackrabbit.webdav.server.AbstractWebdavServlet
      Throws:
      IOException