Repository: curator
Updated Branches:
refs/heads/CURATOR-3.0 e6ed99965 -> adcaf340f
[CURATOR-361] Prevent removal of leading slash from path when empty namespace
used
Project: http://git-wip-us.apache.org/repos/asf/curator/repo
Commit: http://git-wip-us.apache.org/repos/asf/curator/commit/82a8906d
Tree: http://git-wip-us.apache.org/repos/asf/curator/tree/82a8906d
Diff: http://git-wip-us.apache.org/repos/asf/curator/diff/82a8906d
Branch: refs/heads/CURATOR-3.0
Commit: 82a8906ddb185e4d405056aeed8abc807f440440
Parents: 0a0a1e7
Author: Charles Ruhland
Authored: Tue Dec 6 17:53:12 2016 -0800
Committer: Charles Ruhland
Committed: Tue Dec 6 17:53:12 2016 -0800
--
.../org/apache/curator/framework/imps/NamespaceImpl.java | 2 +-
.../curator/framework/imps/TestNamespaceFacade.java | 10 ++
2 files changed, 11 insertions(+), 1 deletion(-)
--
http://git-wip-us.apache.org/repos/asf/curator/blob/82a8906d/curator-framework/src/main/java/org/apache/curator/framework/imps/NamespaceImpl.java
--
diff --git
a/curator-framework/src/main/java/org/apache/curator/framework/imps/NamespaceImpl.java
b/curator-framework/src/main/java/org/apache/curator/framework/imps/NamespaceImpl.java
index 29adbc6..c8dfce7 100644
---
a/curator-framework/src/main/java/org/apache/curator/framework/imps/NamespaceImpl.java
+++
b/curator-framework/src/main/java/org/apache/curator/framework/imps/NamespaceImpl.java
@@ -64,7 +64,7 @@ class NamespaceImpl
if ( (namespace != null) && (path != null) )
{
String namespacePath = ZKPaths.makePath(namespace, null);
-if ( path.startsWith(namespacePath) )
+if ( !namespacePath.equals("/") && path.startsWith(namespacePath) )
{
path = (path.length() > namespacePath.length()) ?
path.substring(namespacePath.length()) : "/";
}
http://git-wip-us.apache.org/repos/asf/curator/blob/82a8906d/curator-framework/src/test/java/org/apache/curator/framework/imps/TestNamespaceFacade.java
--
diff --git
a/curator-framework/src/test/java/org/apache/curator/framework/imps/TestNamespaceFacade.java
b/curator-framework/src/test/java/org/apache/curator/framework/imps/TestNamespaceFacade.java
index d09dd18..9357d00 100644
---
a/curator-framework/src/test/java/org/apache/curator/framework/imps/TestNamespaceFacade.java
+++
b/curator-framework/src/test/java/org/apache/curator/framework/imps/TestNamespaceFacade.java
@@ -229,4 +229,14 @@ public class TestNamespaceFacade extends BaseClassForTests
//Expected
}
}
+
+@Test
+public void testUnfixForEmptyNamespace() {
+CuratorFramework client =
CuratorFrameworkFactory.builder().namespace("").retryPolicy(new
RetryOneTime(1)).connectString("").build();
+CuratorFrameworkImpl clientImpl = (CuratorFrameworkImpl) client;
+
+Assert.assertEquals(clientImpl.unfixForNamespace("/foo/bar"),
"/foo/bar");
+
+CloseableUtils.closeQuietly(client);
+}
}