/** * Send requests and iterate over server responses. * * <p>This returns a live stream that must either be fully consumed or cancelled. */ public BidiStream<RequestT, ResponseT> call(ApiCallContext context) { BidiStream<RequestT, ResponseT> stream = new BidiStream<>(); ClientStream<RequestT> clientStream = splitCall(stream.observer(), context); stream.setClientStream(clientStream); return stream; }
/** * Send requests and iterate over server responses. * * <p>This returns a live stream that must either be fully consumed or cancelled. */ public BidiStream<RequestT, ResponseT> call(ApiCallContext context) { BidiStream<RequestT, ResponseT> stream = new BidiStream<>(); ClientStream<RequestT> clientStream = splitCall(stream.observer(), context); stream.setClientStream(clientStream); return stream; }