Repository: curator
Updated Branches:
  refs/heads/master 12cc7cec5 -> 3b9d60626


removed asyncDefault() it was a dumb idea anyway. Also, fixed one of the tests 
now that the root node isn't cached


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

Branch: refs/heads/master
Commit: 46e5462fb3a5217a2e3077d8e99a0e1b81330f78
Parents: 0f5d10d
Author: randgalt <[email protected]>
Authored: Sun Jul 9 18:07:20 2017 -0500
Committer: randgalt <[email protected]>
Committed: Sun Jul 9 18:07:20 2017 -0500

----------------------------------------------------------------------
 .../modeled/cached/CachedModeledFramework.java  | 10 ---
 .../details/CachedModeledFrameworkImpl.java     | 22 ++----
 .../modeled/TestCachedModeledFramework.java     | 75 +-------------------
 3 files changed, 9 insertions(+), 98 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/curator/blob/46e5462f/curator-x-async/src/main/java/org/apache/curator/x/async/modeled/cached/CachedModeledFramework.java
----------------------------------------------------------------------
diff --git 
a/curator-x-async/src/main/java/org/apache/curator/x/async/modeled/cached/CachedModeledFramework.java
 
b/curator-x-async/src/main/java/org/apache/curator/x/async/modeled/cached/CachedModeledFramework.java
index 8acbebb..6cda3aa 100644
--- 
a/curator-x-async/src/main/java/org/apache/curator/x/async/modeled/cached/CachedModeledFramework.java
+++ 
b/curator-x-async/src/main/java/org/apache/curator/x/async/modeled/cached/CachedModeledFramework.java
@@ -37,16 +37,6 @@ public interface CachedModeledFramework<T> extends 
ModeledFramework<T>, Closeabl
     ModeledCache<T> cache();
 
     /**
-     * Returns a view of this instance that uses the CachedModeledFramework's 
executor
-     * for all default async completion operations. i.e. when you use, for 
example,
-     * {@link 
java.util.concurrent.CompletionStage#handleAsync(java.util.function.BiFunction)}
-     * this instance's executor is used instead of 
<code>ForkJoinPool.commonPool()</code>.
-     *
-     * @return view
-     */
-    CachedModeledFramework<T> asyncDefault();
-
-    /**
      * Start the internally created cache
      */
     void start();

http://git-wip-us.apache.org/repos/asf/curator/blob/46e5462f/curator-x-async/src/main/java/org/apache/curator/x/async/modeled/details/CachedModeledFrameworkImpl.java
----------------------------------------------------------------------
diff --git 
a/curator-x-async/src/main/java/org/apache/curator/x/async/modeled/details/CachedModeledFrameworkImpl.java
 
b/curator-x-async/src/main/java/org/apache/curator/x/async/modeled/details/CachedModeledFrameworkImpl.java
index 2a7fd5f..f701ab3 100644
--- 
a/curator-x-async/src/main/java/org/apache/curator/x/async/modeled/details/CachedModeledFrameworkImpl.java
+++ 
b/curator-x-async/src/main/java/org/apache/curator/x/async/modeled/details/CachedModeledFrameworkImpl.java
@@ -48,19 +48,17 @@ class CachedModeledFrameworkImpl<T> implements 
CachedModeledFramework<T>
     private final ModeledFramework<T> client;
     private final ModeledCacheImpl<T> cache;
     private final Executor executor;
-    private final boolean asyncDefaultMode;
 
     CachedModeledFrameworkImpl(ModeledFramework<T> client, ExecutorService 
executor)
     {
-        this(client, new ModeledCacheImpl<>(client.unwrap().unwrap(), 
client.modelSpec(), executor), executor, false);
+        this(client, new ModeledCacheImpl<>(client.unwrap().unwrap(), 
client.modelSpec(), executor), executor);
     }
 
-    private CachedModeledFrameworkImpl(ModeledFramework<T> client, 
ModeledCacheImpl<T> cache, Executor executor, boolean asyncDefaultMode)
+    private CachedModeledFrameworkImpl(ModeledFramework<T> client, 
ModeledCacheImpl<T> cache, Executor executor)
     {
         this.client = client;
         this.cache = cache;
         this.executor = executor;
-        this.asyncDefaultMode = asyncDefaultMode;
     }
 
     @Override
@@ -70,12 +68,6 @@ class CachedModeledFrameworkImpl<T> implements 
CachedModeledFramework<T>
     }
 
     @Override
-    public CachedModeledFramework<T> asyncDefault()
-    {
-        return new CachedModeledFrameworkImpl<>(client, cache, executor, true);
-    }
-
-    @Override
     public void start()
     {
         cache.start();
@@ -126,7 +118,7 @@ class CachedModeledFrameworkImpl<T> implements 
CachedModeledFramework<T>
     @Override
     public CachedModeledFramework<T> child(Object child)
     {
-        return new CachedModeledFrameworkImpl<>(client.child(child), cache, 
executor, asyncDefaultMode);
+        return new CachedModeledFrameworkImpl<>(client.child(child), cache, 
executor);
     }
 
     @Override
@@ -138,7 +130,7 @@ class CachedModeledFrameworkImpl<T> implements 
CachedModeledFramework<T>
     @Override
     public CachedModeledFramework<T> withPath(ZPath path)
     {
-        return new CachedModeledFrameworkImpl<>(client.withPath(path), cache, 
executor, asyncDefaultMode);
+        return new CachedModeledFrameworkImpl<>(client.withPath(path), cache, 
executor);
     }
 
     @Override
@@ -215,7 +207,7 @@ class CachedModeledFrameworkImpl<T> implements 
CachedModeledFramework<T>
             .stream()
             .map(ZNode::model)
             .collect(Collectors.toList());
-        return asyncDefaultMode ? ModelStage.asyncCompleted(children, 
executor) : ModelStage.completed(children);
+        return ModelStage.completed(children);
     }
 
     @Override
@@ -323,13 +315,13 @@ class CachedModeledFrameworkImpl<T> implements 
CachedModeledFramework<T>
 
     private <U> AsyncStage<U> completed(U value)
     {
-        return asyncDefaultMode ? ModelStage.asyncCompleted(value, executor) : 
ModelStage.completed(value);
+        return ModelStage.completed(value);
     }
 
     private <U> AsyncStage<U> exceptionally()
     {
         KeeperException.NoNodeException exception = new 
KeeperException.NoNodeException(client.modelSpec().path().fullPath());
-        return asyncDefaultMode ? ModelStage.asyncExceptionally(exception, 
executor) : ModelStage.exceptionally(exception);
+        return ModelStage.exceptionally(exception);
     }
 
     private <U> AsyncStage<U> internalRead(Function<ZNode<T>, U> resolver, 
Supplier<AsyncStage<U>> elseProc)

http://git-wip-us.apache.org/repos/asf/curator/blob/46e5462f/curator-x-async/src/test/java/org/apache/curator/x/async/modeled/TestCachedModeledFramework.java
----------------------------------------------------------------------
diff --git 
a/curator-x-async/src/test/java/org/apache/curator/x/async/modeled/TestCachedModeledFramework.java
 
b/curator-x-async/src/test/java/org/apache/curator/x/async/modeled/TestCachedModeledFramework.java
index 49821e2..80c1f8b 100644
--- 
a/curator-x-async/src/test/java/org/apache/curator/x/async/modeled/TestCachedModeledFramework.java
+++ 
b/curator-x-async/src/test/java/org/apache/curator/x/async/modeled/TestCachedModeledFramework.java
@@ -28,82 +28,11 @@ import org.testng.annotations.Test;
 import java.io.IOException;
 import java.math.BigInteger;
 import java.util.concurrent.CountDownLatch;
-import java.util.concurrent.ExecutorService;
-import java.util.concurrent.Executors;
 import java.util.concurrent.Semaphore;
-import java.util.concurrent.atomic.AtomicReference;
 
 public class TestCachedModeledFramework extends TestModeledFrameworkBase
 {
     @Test
-    public void testThreading()
-    {
-        TestModel model = new TestModel("a", "b", "c", 1, BigInteger.ONE);
-        CachedModeledFramework<TestModel> client = 
ModeledFramework.wrap(async, modelSpec).cached().asyncDefault();
-
-        CountDownLatch latch = new CountDownLatch(1);
-        client.listenable().addListener((type, path1, stat, model1) -> 
latch.countDown());
-
-        complete(client.set(model));
-        client.start();
-        try
-        {
-            Assert.assertTrue(new Timing().awaitLatch(latch));
-
-            AtomicReference<Thread> completionThread = new AtomicReference<>();
-            complete(client.read().whenCompleteAsync((s, e) -> 
completionThread.set((e == null) ? Thread.currentThread() : null)));
-            Assert.assertNotNull(completionThread.get());
-            Assert.assertNotEquals(Thread.currentThread(), 
completionThread.get(), "Should be different threads");
-            completionThread.set(null);
-
-            complete(client.child("foo").read().whenCompleteAsync((v, e) -> 
completionThread.set((e != null) ? Thread.currentThread() : null)));
-            Assert.assertNotNull(completionThread.get());
-            Assert.assertNotEquals(Thread.currentThread(), 
completionThread.get(), "Should be different threads");
-            completionThread.set(null);
-        }
-        finally
-        {
-            client.close();
-        }
-    }
-
-    @Test
-    public void testCustomThreading()
-    {
-        AtomicReference<Thread> ourThread = new AtomicReference<>();
-        ExecutorService executor = Executors.newSingleThreadExecutor(r -> {
-            Thread thread = new Thread(r, "testCustomThreading");
-            ourThread.set(thread);
-            return thread;
-        });
-        TestModel model = new TestModel("a", "b", "c", 1, BigInteger.ONE);
-        CachedModeledFramework<TestModel> client = 
ModeledFramework.wrap(async, modelSpec).cached(executor).asyncDefault();
-
-        CountDownLatch latch = new CountDownLatch(1);
-        client.listenable().addListener((type, path1, stat, model1) -> 
latch.countDown());
-
-        complete(client.set(model));
-        client.start();
-        try
-        {
-            Assert.assertTrue(new Timing().awaitLatch(latch));
-
-            AtomicReference<Thread> completionThread = new AtomicReference<>();
-            complete(client.read().thenAcceptAsync(s -> 
completionThread.set(Thread.currentThread())));
-            Assert.assertEquals(ourThread.get(), completionThread.get(), 
"Should be our thread");
-            completionThread.set(null);
-
-            complete(client.child("foo").read().whenCompleteAsync((v, e) -> 
completionThread.set((e != null) ? Thread.currentThread() : null)));
-            Assert.assertEquals(ourThread.get(), completionThread.get(), 
"Should be our thread");
-            completionThread.set(null);
-        }
-        finally
-        {
-            client.close();
-        }
-    }
-
-    @Test
     public void testDownServer() throws IOException
     {
         Timing timing = new Timing();
@@ -116,7 +45,7 @@ public class TestCachedModeledFramework extends 
TestModeledFrameworkBase
         client.start();
         try
         {
-            client.set(model);
+            client.child(model).set(model);
             Assert.assertTrue(timing.acquireSemaphore(semaphore));
 
             CountDownLatch latch = new CountDownLatch(1);
@@ -129,7 +58,7 @@ public class TestCachedModeledFramework extends 
TestModeledFrameworkBase
             server.stop();
             Assert.assertTrue(timing.awaitLatch(latch));
 
-            complete(client.read().whenComplete((value, e) -> {
+            complete(client.child(model).read().whenComplete((value, e) -> {
                 Assert.assertNotNull(value);
                 Assert.assertNull(e);
             }));

Reply via email to