Improve WebDav
[lgpl/argeo-commons.git] / server / runtime / org.argeo.server.jackrabbit / src / main / java / org / argeo / jackrabbit / remote / SimpleWebdavServlet.java
index f67325a0e691c610e605bedab869e17f1098d023..12de420a99c7ab75ad4cd94dce7823c82ce07dd9 100644 (file)
  */
 package org.argeo.jackrabbit.remote;
 
+import java.io.IOException;
+
 import javax.jcr.Repository;
+import javax.servlet.ServletException;
 
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
 import org.apache.jackrabbit.server.SessionProvider;
+import org.apache.jackrabbit.webdav.DavException;
+import org.apache.jackrabbit.webdav.DavResource;
+import org.apache.jackrabbit.webdav.WebdavRequest;
+import org.apache.jackrabbit.webdav.WebdavResponse;
 
 /** WebDav servlet whose repository is injected */
 public class SimpleWebdavServlet extends
                org.apache.jackrabbit.webdav.simple.SimpleWebdavServlet {
        private static final long serialVersionUID = -369787931175177080L;
+
+       private final static Log log = LogFactory.getLog(SimpleWebdavServlet.class);
+
        private final Repository repository;
 
        public SimpleWebdavServlet(Repository repository,
@@ -35,4 +47,14 @@ public class SimpleWebdavServlet extends
                return repository;
        }
 
+       @Override
+       protected boolean execute(WebdavRequest request, WebdavResponse response,
+                       int method, DavResource resource) throws ServletException,
+                       IOException, DavException {
+               if (log.isTraceEnabled())
+                       log.trace(request.getMethod() + "\t" + request.getPathInfo());
+               boolean res = super.execute(request, response, method, resource);
+               return res;
+       }
+
 }