X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms%2Fsrc%2Forg%2Fargeo%2Fcms%2Finternal%2Fhttp%2FCmsWebDavServlet.java;h=d61e5f49403fa99e0195cf154147b55758a648ca;hb=3779305ca2c08e66d9ba2061c76eb79e278860fb;hp=f60e3b6043f4f272417489dc18ae1838b76e33aa;hpb=43a797b3947a43d4fe41502b0a2b20adf8acaf2a;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.cms/src/org/argeo/cms/internal/http/CmsWebDavServlet.java b/org.argeo.cms/src/org/argeo/cms/internal/http/CmsWebDavServlet.java index f60e3b604..d61e5f494 100644 --- a/org.argeo.cms/src/org/argeo/cms/internal/http/CmsWebDavServlet.java +++ b/org.argeo.cms/src/org/argeo/cms/internal/http/CmsWebDavServlet.java @@ -7,10 +7,19 @@ import javax.jcr.Repository; import org.apache.jackrabbit.webdav.simple.SimpleWebdavServlet; import org.argeo.api.NodeConstants; +/** A {@link SimpleWebdavServlet} based on {@link CmsSessionProvider}. */ public class CmsWebDavServlet extends SimpleWebdavServlet { private static final long serialVersionUID = 7485800288686328063L; private Repository repository; + public CmsWebDavServlet() { + } + + public CmsWebDavServlet(String alias, Repository repository) { + this.repository = repository; + setSessionProvider(new CmsSessionProvider(alias)); + } + @Override public Repository getRepository() { return repository; @@ -21,6 +30,8 @@ public class CmsWebDavServlet extends SimpleWebdavServlet { String alias = properties.get(NodeConstants.CN); if (alias != null) setSessionProvider(new CmsSessionProvider(alias)); + else + throw new IllegalArgumentException("Only aliased repositories are supported"); } }