Package io.grpc

Class ForwardingServerCallListener<ReqT>

java.lang.Object
io.grpc.ServerCall.Listener<ReqT>
io.grpc.ForwardingServerCallListener<ReqT>
Direct Known Subclasses:
ForwardingServerCallListener.SimpleForwardingServerCallListener

public abstract class ForwardingServerCallListener<ReqT> extends ServerCall.Listener<ReqT>
A ServerCall.Listener which forwards all of its methods to another ServerCall.Listener of matching parameterized types.
  • Constructor Details

    • ForwardingServerCallListener

      public ForwardingServerCallListener()
  • Method Details

    • delegate

      protected abstract ServerCall.Listener<ReqT> delegate()
      Returns the delegated ServerCall.Listener.
    • onMessage

      public void onMessage(ReqT message)
      Description copied from class: ServerCall.Listener
      A request message has been received. For streaming calls, there may be zero or more request messages.
      Overrides:
      onMessage in class ServerCall.Listener<ReqT>
      Parameters:
      message - a received request message.
    • onHalfClose

      public void onHalfClose()
      Description copied from class: ServerCall.Listener
      The client completed all message sending. However, the call may still be cancelled.
      Overrides:
      onHalfClose in class ServerCall.Listener<ReqT>
    • onCancel

      public void onCancel()
      Description copied from class: ServerCall.Listener
      The call was cancelled and the server is encouraged to abort processing to save resources, since the client will not process any further messages. Cancellations can be caused by timeouts, explicit cancellation by the client, network errors, etc.

      There will be no further callbacks for the call.

      Overrides:
      onCancel in class ServerCall.Listener<ReqT>
    • onComplete

      public void onComplete()
      Description copied from class: ServerCall.Listener
      The call is considered complete and ServerCall.Listener.onCancel() is guaranteed not to be called. However, the client is not guaranteed to have received all messages.

      There will be no further callbacks for the call.

      Overrides:
      onComplete in class ServerCall.Listener<ReqT>
    • onReady

      public void onReady()
      Description copied from class: ServerCall.Listener
      This indicates that the call may now be capable of sending additional messages (via ServerCall.sendMessage(RespT)) without requiring excessive buffering internally. This event is just a suggestion and the application is free to ignore it, however doing so may result in excessive buffering within the call.

      Because there is a processing delay to deliver this notification, it is possible for concurrent writes to cause isReady() == false within this callback. Handle "spurious" notifications by checking isReady()'s current value instead of assuming it is now true. If isReady() == false the normal expectations apply, so there would be another onReady() callback.

      Overrides:
      onReady in class ServerCall.Listener<ReqT>
    • toString

      public String toString()
      Overrides:
      toString in class Object