Repository: curator
Updated Branches:
  refs/heads/CURATOR-397 1110ab3bb -> e95b885eb


Allow setting a version for orSetData()


Project: http://git-wip-us.apache.org/repos/asf/curator/repo
Commit: http://git-wip-us.apache.org/repos/asf/curator/commit/e95b885e
Tree: http://git-wip-us.apache.org/repos/asf/curator/tree/e95b885e
Diff: http://git-wip-us.apache.org/repos/asf/curator/diff/e95b885e

Branch: refs/heads/CURATOR-397
Commit: e95b885ebf0240e61d8de1c2644f8fb11cc2eca5
Parents: 1110ab3
Author: randgalt <[email protected]>
Authored: Sun May 7 09:58:07 2017 +0200
Committer: randgalt <[email protected]>
Committed: Sun May 7 09:58:07 2017 +0200

----------------------------------------------------------------------
 .../org/apache/curator/framework/api/CreateBuilder.java   | 10 ++++++++++
 .../apache/curator/framework/imps/CreateBuilderImpl.java  |  9 ++++++++-
 2 files changed, 18 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/curator/blob/e95b885e/curator-framework/src/main/java/org/apache/curator/framework/api/CreateBuilder.java
----------------------------------------------------------------------
diff --git 
a/curator-framework/src/main/java/org/apache/curator/framework/api/CreateBuilder.java
 
b/curator-framework/src/main/java/org/apache/curator/framework/api/CreateBuilder.java
index 59b3510..b310f06 100644
--- 
a/curator-framework/src/main/java/org/apache/curator/framework/api/CreateBuilder.java
+++ 
b/curator-framework/src/main/java/org/apache/curator/framework/api/CreateBuilder.java
@@ -32,5 +32,15 @@ public interface CreateBuilder extends CreateBuilderMain
      */
     CreateBuilderMain withTtl(long ttl);
 
+    /**
+     * If the ZNode already exists, Curator will instead call setData()
+     */
     CreateBuilder2 orSetData();
+
+    /**
+     * If the ZNode already exists, Curator will instead call setData()
+     *
+     * @param version the version to use for {@link 
org.apache.curator.framework.CuratorFramework#setData()}
+     */
+    CreateBuilder2 orSetData(int version);
 }

http://git-wip-us.apache.org/repos/asf/curator/blob/e95b885e/curator-framework/src/main/java/org/apache/curator/framework/imps/CreateBuilderImpl.java
----------------------------------------------------------------------
diff --git 
a/curator-framework/src/main/java/org/apache/curator/framework/imps/CreateBuilderImpl.java
 
b/curator-framework/src/main/java/org/apache/curator/framework/imps/CreateBuilderImpl.java
index 60f49c5..cabcb99 100644
--- 
a/curator-framework/src/main/java/org/apache/curator/framework/imps/CreateBuilderImpl.java
+++ 
b/curator-framework/src/main/java/org/apache/curator/framework/imps/CreateBuilderImpl.java
@@ -104,8 +104,15 @@ public class CreateBuilderImpl implements CreateBuilder, 
CreateBuilder2, Backgro
     @Override
     public CreateBuilder2 orSetData()
     {
+        return orSetData(-1);
+    }
+
+    @Override
+    public CreateBuilder2 orSetData(int version)
+    {
         setDataIfExists = true;
-        return this;
+        setDataIfExistsVersion = version;
+        return null;
     }
 
     @Override

Reply via email to