diff --git a/runtime/src/main/java/org/capnproto/Capability.java b/runtime/src/main/java/org/capnproto/Capability.java index a54bc57..e41e949 100644 --- a/runtime/src/main/java/org/capnproto/Capability.java +++ b/runtime/src/main/java/org/capnproto/Capability.java @@ -688,17 +688,14 @@ public final class Capability { private static final class QueuedPipeline implements PipelineHook { private final CompletableFuture promise; - private final CompletableFuture selfResolutionOp; PipelineHook redirect; private final Map, ClientHook> clientMap = new HashMap<>(); - QueuedPipeline(CompletableFuture promiseParam) { - this.promise = promiseParam; - this.selfResolutionOp = promise.handle((pipeline, exc) -> { + QueuedPipeline(CompletableFuture promise) { + this.promise = promise.whenComplete((pipeline, exc) -> { this.redirect = exc == null ? pipeline : PipelineHook.newBrokenPipeline(exc); - return null; }); } @@ -713,17 +710,6 @@ public final class Capability { k -> new QueuedClient(this.promise.thenApply( pipeline -> pipeline.getPipelinedCap(ops)))); } -/* - @Override - public void close() { - if (this.redirect != null) { - this.redirect.close(); - } - else { - this.promise.cancel(false); - } - } - */ } // A ClientHook which simply queues calls while waiting for a ClientHook to which to forward them.