Interface ResponseObserver<V> (2.19.6)

  public 
  
 interface 
 ResponseObserver<V> 
 

Receives notifications from server-streaming calls.

The application is responsible for implementing the ResponseObserver and passing it to GAX, which then calls the observer with the messages for the application to receive them. The methods might be called by different threads, but are guaranteed to happen sequentially. The order of callbacks is guaranteed to be:

  • exactly 1 onStart
  • 0 or more on Response
  • exactly 1 onError or onComplete

By default, the stream uses automatic flow control, where the next response will be delivered as soon as the current one is processed by onResponse. A consumer can disable automatic flow control by calling disableAutoInboundFlowControl() in onStart . After this, the consumer must request responses by calling request() .

Type Parameter

Name Description
V

Methods

onComplete()

  public 
  
 abstract 
  
 void 
  
 onComplete 
 () 
 

Receives a notification of successful stream completion.

May only be called once, and if called, it must be the last method called. In particular, if an exception is thrown by an implementation of onComplete , no further calls to any method are allowed.

onError(Throwable t)

  public 
  
 abstract 
  
 void 
  
 onError 
 ( 
 Throwable 
  
 t 
 ) 
 

Receives a terminating error from the stream.

May only be called once, and if called, it must be the last method called. In particular, if an exception is thrown by an implementation of onError , no further calls to any method are allowed.

Parameter
Name Description
t Throwable

the error occurred on the stream

onResponse(V response)

  public 
  
 abstract 
  
 void 
  
 onResponse 
 ( 
 V 
  
 response 
 ) 
 

Receives a value from the stream.

Can be called many times but is never called after #onError(Throwable) or #onComplete() are called.

Clients may may receive 0 or more onResponse callbacks.

If an exception is thrown by an implementation the caller will terminate the stream by calling #onError(Throwable) with the caught exception as the cause.

Parameter
Name Description
response V

the value passed to the stream

onStart(StreamController controller)

  public 
  
 abstract 
  
 void 
  
 onStart 
 ( 
 StreamController 
  
 controller 
 ) 
 

Called before the stream is started. This must be invoked synchronously on the same thread that called ServerStreamingCallable#call(Object, ResponseObserver, ApiCallContext)

Allows for disabling flow control and early stream termination via StreamController .

Parameter
Name Description
controller StreamController

The controller for the stream.

Create a Mobile Website
View Site in Mobile | Classic
Share by: