diff --git a/interop-testing/src/main/java/io/grpc/testing/integration/TestServiceImpl.java b/interop-testing/src/main/java/io/grpc/testing/integration/TestServiceImpl.java index 8d0c4f421a..5fe7248b2b 100644 --- a/interop-testing/src/main/java/io/grpc/testing/integration/TestServiceImpl.java +++ b/interop-testing/src/main/java/io/grpc/testing/integration/TestServiceImpl.java @@ -228,7 +228,7 @@ public class TestServiceImpl extends TestServiceGrpc.TestServiceImplBase { private class ResponseDispatcher { private final Chunk completionChunk = new Chunk(0, 0, 0); private final Queue chunks; - private final ServerCallStreamObserver responseStream; + private final StreamObserver responseStream; private boolean scheduled; @GuardedBy("this") private boolean cancelled; private Throwable failure; @@ -268,12 +268,7 @@ public class TestServiceImpl extends TestServiceGrpc.TestServiceImplBase { */ public ResponseDispatcher(StreamObserver responseStream) { this.chunks = Queues.newLinkedBlockingQueue(); - this.responseStream = (ServerCallStreamObserver) responseStream; - this.responseStream.setOnReadyHandler(new Runnable() { - @Override public void run() { - scheduleNextChunk(); - } - }); + this.responseStream = responseStream; } /** @@ -354,11 +349,6 @@ public class TestServiceImpl extends TestServiceGrpc.TestServiceImplBase { return; } - if (chunks.peek() != completionChunk && !responseStream.isReady()) { - // Wait for the onReady handler to be called. - return; - } - // Schedule the next response chunk if there is one. Chunk nextChunk = chunks.peek(); if (nextChunk != null) {