[exo-jcr-commits] exo-jcr SVN: r3579 - in jcr/branches/1.12.x/exo.jcr.component.webdav/src: test/java/org/exoplatform/services/jcr/webdav/utils and 1 other directory.

do-not-reply at jboss.org do-not-reply at jboss.org
Wed Dec 1 02:14:27 EST 2010


Author: dkuleshov
Date: 2010-12-01 02:14:26 -0500 (Wed, 01 Dec 2010)
New Revision: 3579

Modified:
   jcr/branches/1.12.x/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/WebDavServiceImpl.java
   jcr/branches/1.12.x/exo.jcr.component.webdav/src/test/java/org/exoplatform/services/jcr/webdav/utils/TestUtils.java
Log:
JCR-1534: modified token parsing for if headers

Modified: jcr/branches/1.12.x/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/WebDavServiceImpl.java
===================================================================
--- jcr/branches/1.12.x/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/WebDavServiceImpl.java	2010-11-30 09:44:44 UTC (rev 3578)
+++ jcr/branches/1.12.x/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/WebDavServiceImpl.java	2010-12-01 07:14:26 UTC (rev 3579)
@@ -480,6 +480,10 @@
          if (lockTokenHeader != null)
          {
             lockTokenHeader = lockTokenHeader.substring(1, lockTokenHeader.length() - 1);
+            if (lockTokenHeader.contains(WebDavConst.Lock.OPAQUE_LOCK_TOKEN))
+            {
+               lockTokenHeader = lockTokenHeader.split(":")[1];
+            }
          }
          return new DeleteCommand().delete(session, path(repoPath), lockTokenHeader);
       }
@@ -1279,7 +1283,7 @@
       {
          lockTokenHeader = lockTokenHeader.substring(1, lockTokenHeader.length() - 1);
 
-         if (lockTokenHeader.contains("opaquelocktoken"))
+         if (lockTokenHeader.contains(WebDavConst.Lock.OPAQUE_LOCK_TOKEN))
          {
             lockTokenHeader = lockTokenHeader.split(":")[1];
          }
@@ -1291,6 +1295,10 @@
       {
          String headerLockToken = ifHeader.substring(ifHeader.indexOf("("));
          headerLockToken = headerLockToken.substring(2, headerLockToken.length() - 2);
+         if (headerLockToken.contains(WebDavConst.Lock.OPAQUE_LOCK_TOKEN))
+         {
+            headerLockToken = headerLockToken.split(":")[1];
+         }
          lockTokens.add(headerLockToken);
       }
 

Modified: jcr/branches/1.12.x/exo.jcr.component.webdav/src/test/java/org/exoplatform/services/jcr/webdav/utils/TestUtils.java
===================================================================
--- jcr/branches/1.12.x/exo.jcr.component.webdav/src/test/java/org/exoplatform/services/jcr/webdav/utils/TestUtils.java	2010-11-30 09:44:44 UTC (rev 3578)
+++ jcr/branches/1.12.x/exo.jcr.component.webdav/src/test/java/org/exoplatform/services/jcr/webdav/utils/TestUtils.java	2010-12-01 07:14:26 UTC (rev 3579)
@@ -19,6 +19,7 @@
 package org.exoplatform.services.jcr.webdav.utils;
 
 import org.exoplatform.common.http.client.HTTPConnection;
+import org.exoplatform.services.jcr.webdav.WebDavConst;
 import org.exoplatform.services.jcr.webdav.WebDavConstants.WebDav;
 import org.exoplatform.services.jcr.webdav.util.TextUtil;
 import org.w3c.dom.Document;
@@ -192,7 +193,7 @@
       session.save();
       String tok = lock.getLockToken();
       // System.out.println("TestUtils.lockNode()" + tok);
-      return "<" + tok + ">";
+      return "<" + WebDavConst.Lock.OPAQUE_LOCK_TOKEN + ":" + tok + ">";
    }
 
    public static void find(Session session, String queryString) throws InvalidQueryException, RepositoryException



More information about the exo-jcr-commits mailing list