From e6fd1db5282ad2b7f7953d61ab68137391787500 Mon Sep 17 00:00:00 2001 From: Dave Ward Date: Mon, 11 Oct 2010 18:09:07 +0000 Subject: [PATCH] Merged DEV/TEMPORARY to HEAD (pending review comments) 22072: ALF-3707: Alfresco Sharepoint protocol and Office 2010 issue The following was added to support Office 2010: - Specific HTTP headers were added. - Server version headers and server version method were changed. - WebDAV LOCK method was changed to support inheritance. - VTI LOCK and UNLOCK methods were implemented. - VtiWebDavAction was added to support WebDAV methods extension. - VtiLock and VtiUnlock actions were implemented. - IfHeaderAction was extended to support new requests. - CheckOutFile service was implemented. - CheckInFile service was implemented. - UndoCheckOutFile service was implemented. - VtiMethodHandler was extended to support work with Working Copy. - CheckOutCheckInServiceHandler was added to support appropriate endpoints. - VtiRequestDispatcher was extended to provide additional dispatching. - Configuration was extended to support new FrontPage methods and web services. - Some unused fields and config values were removed. 22922: ALF-4817: Can't use Sharepoint module with Windows 7 - locking not implemented Implemented and Tested Open, Save, CheckOut, CheckIn and cancel checkOut operations on following environment: Win Vista: Office 2003, Office 2007 Win XP: Office 2003, Office 2007, Office 2010 Win 7: Office 2007 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@23025 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../java/org/alfresco/repo/webdav/LockMethod.java | 14 ++++++++------ .../org/alfresco/repo/webdav/PropPatchMethod.java | 6 +++--- 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/source/java/org/alfresco/repo/webdav/LockMethod.java b/source/java/org/alfresco/repo/webdav/LockMethod.java index 6b2be06678..d16ca13218 100644 --- a/source/java/org/alfresco/repo/webdav/LockMethod.java +++ b/source/java/org/alfresco/repo/webdav/LockMethod.java @@ -47,13 +47,13 @@ public class LockMethod extends WebDAVMethod { public static final String EMPTY_NS = ""; - private int m_timeoutDuration = WebDAV.TIMEOUT_INFINITY; + protected int m_timeoutDuration = WebDAV.TIMEOUT_INFINITY; - private LockInfo lockInfo = new LockInfo(); + protected LockInfo lockInfo = new LockInfo(); - private boolean createExclusive; + protected boolean createExclusive; - private String lockToken= null; + protected String lockToken= null; /** * Default constructor @@ -338,7 +338,7 @@ public class LockMethod extends WebDAVMethod * @param userName String * @exception WebDAVServerException */ - private final void refreshLock(FileInfo lockNode, String userName) throws WebDAVServerException + protected final void refreshLock(FileInfo lockNode, String userName) throws WebDAVServerException { if (this.createExclusive) { @@ -350,7 +350,7 @@ public class LockMethod extends WebDAVMethod /** * Generates the XML lock discovery response body */ - private void generateResponse(NodeRef lockNode, String userName) throws Exception + protected void generateResponse(NodeRef lockNode, String userName) throws Exception { String scope; String lt; @@ -413,6 +413,8 @@ public class LockMethod extends WebDAVMethod ns.append(" "); ns.append(WebDAV.XML_NS); + ns.append(":"); + ns.append(WebDAV.DAV_NS); ns.append("=\""); ns.append(WebDAV.DEFAULT_NAMESPACE_URI); ns.append("\""); diff --git a/source/java/org/alfresco/repo/webdav/PropPatchMethod.java b/source/java/org/alfresco/repo/webdav/PropPatchMethod.java index ac62ab176a..418c877b55 100644 --- a/source/java/org/alfresco/repo/webdav/PropPatchMethod.java +++ b/source/java/org/alfresco/repo/webdav/PropPatchMethod.java @@ -354,10 +354,10 @@ public class PropPatchMethod extends PropFindMethod * * @author Ivan Rybnikov */ - private class PropertyAction + protected class PropertyAction { - protected static final int SET = 0; - protected static final int REMOVE = 1; + public static final int SET = 0; + public static final int REMOVE = 1; // Property on which action should be performed private WebDAVProperty property;