2 * Copyright (C) 2007-2012 Argeo GmbH
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
16 package org
.argeo
.jackrabbit
.servlet
;
18 import java
.io
.IOException
;
20 import javax
.jcr
.Repository
;
21 import javax
.servlet
.ServletException
;
23 import org
.apache
.commons
.logging
.Log
;
24 import org
.apache
.commons
.logging
.LogFactory
;
25 import org
.apache
.jackrabbit
.server
.SessionProvider
;
26 import org
.apache
.jackrabbit
.webdav
.DavException
;
27 import org
.apache
.jackrabbit
.webdav
.DavResource
;
28 import org
.apache
.jackrabbit
.webdav
.WebdavRequest
;
29 import org
.apache
.jackrabbit
.webdav
.WebdavResponse
;
30 import org
.apache
.jackrabbit
.webdav
.simple
.SimpleWebdavServlet
;
32 /** WebDav servlet whose repository is injected */
34 public class WebdavServlet
extends SimpleWebdavServlet
{
35 public final static String INIT_PARAM_RESOURCE_CONFIG
= SimpleWebdavServlet
.INIT_PARAM_RESOURCE_CONFIG
;
36 public final static String INIT_PARAM_RESOURCE_PATH_PREFIX
= SimpleWebdavServlet
.INIT_PARAM_RESOURCE_PATH_PREFIX
;
38 private static final long serialVersionUID
= -369787931175177080L;
40 private final static Log log
= LogFactory
.getLog(WebdavServlet
.class);
42 private final Repository repository
;
44 public WebdavServlet(Repository repository
, SessionProvider sessionProvider
) {
45 this.repository
= repository
;
46 setSessionProvider(sessionProvider
);
49 public Repository
getRepository() {
54 protected boolean execute(WebdavRequest request
, WebdavResponse response
,
55 int method
, DavResource resource
) throws ServletException
,
56 IOException
, DavException
{
57 if (log
.isTraceEnabled())
58 log
.trace(request
.getMethod() + "\t" + request
.getPathInfo());
59 boolean res
= super.execute(request
, response
, method
, resource
);