From c9f0294aca146f3992b98831929ecb0b926b7c51 Mon Sep 17 00:00:00 2001 From: Henning Baldersheim Date: Sat, 7 Jan 2017 20:34:02 +0100 Subject: Keep the old interface. --- .../src/main/java/com/yahoo/feedapi/SharedSender.java | 8 ++++---- .../src/main/java/com/yahoo/feedhandler/FeedResponse.java | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) (limited to 'vespaclient-core/src') diff --git a/vespaclient-core/src/main/java/com/yahoo/feedapi/SharedSender.java b/vespaclient-core/src/main/java/com/yahoo/feedapi/SharedSender.java index b0e52357a64..00f5606b93a 100755 --- a/vespaclient-core/src/main/java/com/yahoo/feedapi/SharedSender.java +++ b/vespaclient-core/src/main/java/com/yahoo/feedapi/SharedSender.java @@ -182,8 +182,8 @@ public class SharedSender implements ReplyHandler { if (owner != null) { metrics.addReply(r); - boolean active = owner.handleReply(r); OwnerState state = activeOwners.get(owner); + boolean active = owner.handleReply(r, state.getNumPending() - 1); if (state != null) { if (log.isLoggable(LogLevel.SPAM)) { @@ -192,8 +192,8 @@ public class SharedSender implements ReplyHandler { if (!active) { state.clearPending(); activeOwners.remove(owner); - } else if ((state.decPending(1) <= 0)) { - activeOwners.remove(owner); + } else { + state.decPending(1); } } else { // TODO: should be debug level if at all. @@ -269,7 +269,7 @@ public class SharedSender implements ReplyHandler { public interface ResultCallback { /** Return true if we should continue waiting for replies for this sender. */ - boolean handleReply(Reply r); + boolean handleReply(Reply r, int numPending); /** * Returns true if feeding has been aborted. No more feeding is allowed with this diff --git a/vespaclient-core/src/main/java/com/yahoo/feedhandler/FeedResponse.java b/vespaclient-core/src/main/java/com/yahoo/feedhandler/FeedResponse.java index f5d717d35e0..cdd4ac76c4c 100755 --- a/vespaclient-core/src/main/java/com/yahoo/feedhandler/FeedResponse.java +++ b/vespaclient-core/src/main/java/com/yahoo/feedhandler/FeedResponse.java @@ -101,7 +101,7 @@ public final class FeedResponse extends HttpResponse implements SharedSender.Res return ""; } - public boolean handleReply(Reply reply) { + public boolean handleReply(Reply reply, int numPending) { metrics.addReply(reply); if (reply.getTrace().getLevel() > 0) { String str = reply.getTrace().toString(); @@ -126,7 +126,7 @@ public final class FeedResponse extends HttpResponse implements SharedSender.Res isAborted = abortOnError; return !abortOnError; } - return true; + return numPending > 0; } public void done() { -- cgit v1.2.3