Package io.vertx.reactivex.grpc.client

## Class GrpcClientResponse<Req,​Resp>

- java.lang.Object
- - io.vertx.reactivex.grpc.common.GrpcReadStream<Resp>
  - - io.vertx.reactivex.grpc.client.GrpcClientResponse<Req,​Resp>

- All Implemented Interfaces:
    `ReadStream<Resp>`, `StreamBase`

      public class GrpcClientResponse<Req,​Resp>
      extends GrpcReadStream<Resp>

  A response from a gRPC server. You can set a `messageHandler(io.vertx.core.Handler<io.vertx.reactivex.grpc.common.GrpcMessage>)` to receive and a `endHandler(io.vertx.core.Handler<java.lang.Void>)` to be notified of the end of the response.

  NOTE: This class has been automatically generated from the `original` non RX-ified interface using Vert.x codegen.

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static io.vertx.lang.rx.TypeArg<GrpcClientResponse>` | `__TYPE_ARG` |
    `io.vertx.lang.rx.TypeArg<Req>` | `__typeArg_0` |
    `io.vertx.lang.rx.TypeArg<Resp>` | `__typeArg_1` |

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `GrpcClientResponse​(GrpcClientResponse delegate)` |
    `GrpcClientResponse​(Object delegate, io.vertx.lang.rx.TypeArg<Req> typeArg_0, io.vertx.lang.rx.TypeArg<Resp> typeArg_1)` |

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `GrpcClientResponse<Req,​Resp>` | `endHandler​(Handler<Void> handler)` | Set an end handler.
    `boolean` | `equals​(Object o)` |
    `GrpcClientResponse<Req,​Resp>` | `errorHandler​(Handler<GrpcError> handler)` | Set a handler to be notified with gRPC errors.
    `GrpcClientResponse<Req,​Resp>` | `exceptionHandler​(Handler<Throwable> handler)` | Set an exception handler on the read stream.
    `GrpcClientResponse<Req,​Resp>` | `fetch​(long amount)` | Fetch the specified `amount` of elements.
    `GrpcClientResponse` | `getDelegate()` |
    `GrpcClientResponse<Req,​Resp>` | `handler​(Handler<Resp> handler)` | Set a data handler.
    `int` | `hashCode()` |
    `GrpcReadStream<Resp>` | `invalidMessageHandler​(Handler<InvalidMessageException> handler)` | Set a message handler that is reported with invalid message errors.
    `Future<Resp>` | `last()` |
    `GrpcClientResponse<Req,​Resp>` | `messageHandler​(Handler<GrpcMessage> handler)` | Set a handler to be notified with incoming encoded messages.
    `static <Req,​Resp> GrpcClientResponse<Req,​Resp>` | `newInstance​(GrpcClientResponse arg)` |
    `static <Req,​Resp> GrpcClientResponse<Req,​Resp>` | `newInstance​(GrpcClientResponse arg, io.vertx.lang.rx.TypeArg<Req> __typeArg_Req, io.vertx.lang.rx.TypeArg<Resp> __typeArg_Resp)` |
    `GrpcClientResponse<Req,​Resp>` | `pause()` | Pause the `ReadStream`, it sets the buffer in `fetch` mode and clears the actual demand.
    `Pipe<Resp>` | `pipe()` | Pause this stream and return a to transfer the elements of this stream to a destination .
    `Future<Void>` | `pipeTo​(WriteStream<Resp> dst)` | Pipe this `ReadStream` to the `WriteStream`.
    `GrpcClientResponse<Req,​Resp>` | `resume()` | Resume reading, and sets the buffer in `flowing` mode.
    `Single<Resp>` | `rxLast()` |
    `Completable` | `rxPipeTo​(WriteStream<Resp> dst)` | Pipe this `ReadStream` to the `WriteStream`.
    `GrpcStatus` | `status()` |
    `String` | `statusMessage()` |
    `Flowable<Resp>` | `toFlowable()` |
    `Observable<Resp>` | `toObservable()` |
    `String` | `toString()` |
    `MultiMap` | `trailers()` |

    - ### Methods inherited from class io.vertx.reactivex.grpc.common.GrpcReadStream

      `encoding, end, format, headers, newInstance, newInstance, rxEnd`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### __TYPE_ARG

          public static final io.vertx.lang.rx.TypeArg<GrpcClientResponse> __TYPE_ARG

    - #### __typeArg_0

          public final io.vertx.lang.rx.TypeArg<Req> __typeArg_0

    - #### __typeArg_1

          public final io.vertx.lang.rx.TypeArg<Resp> __typeArg_1

  - ### Constructor Detail

    - #### GrpcClientResponse

          public GrpcClientResponse​(GrpcClientResponse delegate)

    - #### GrpcClientResponse

          public GrpcClientResponse​(Object delegate,
                                    io.vertx.lang.rx.TypeArg<Req> typeArg_0,
                                    io.vertx.lang.rx.TypeArg<Resp> typeArg_1)

  - ### Method Detail

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `GrpcReadStream<Resp>`

    - #### equals

          public boolean equals​(Object o)

      Overrides:
        `equals` in class `GrpcReadStream<Resp>`

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `GrpcReadStream<Resp>`

    - #### getDelegate

          public GrpcClientResponse getDelegate()

      Specified by:
        `getDelegate` in interface `ReadStream<Req>`
      Specified by:
        `getDelegate` in interface `StreamBase`
      Overrides:
        `getDelegate` in class `GrpcReadStream<Resp>`

    - #### toObservable

          public Observable<Resp> toObservable()

      Specified by:
        `toObservable` in interface `ReadStream<Req>`
      Overrides:
        `toObservable` in class `GrpcReadStream<Resp>`

    - #### toFlowable

          public Flowable<Resp> toFlowable()

      Specified by:
        `toFlowable` in interface `ReadStream<Req>`
      Overrides:
        `toFlowable` in class `GrpcReadStream<Resp>`

    - #### pipe

          public Pipe<Resp> pipe()

      Pause this stream and return a to transfer the elements of this stream to a destination .

      The stream will be resumed when the pipe will be wired to a `WriteStream`.
      Specified by:
        `pipe` in interface `ReadStream<Req>`
      Overrides:
        `pipe` in class `GrpcReadStream<Resp>`
      Returns:
        a pipe

    - #### pipeTo

          public Future<Void> pipeTo​(WriteStream<Resp> dst)

      Pipe this `ReadStream` to the `WriteStream`.

      Elements emitted by this stream will be written to the write stream until this stream ends or fails.

      Specified by:
        `pipeTo` in interface `ReadStream<Req>`
      Overrides:
        `pipeTo` in class `GrpcReadStream<Resp>`
      Parameters:
        `dst` - the destination write stream
      Returns:
        a future notified when the write stream will be ended with the outcome

    - #### rxPipeTo

          public Completable rxPipeTo​(WriteStream<Resp> dst)

      Pipe this `ReadStream` to the `WriteStream`.

      Elements emitted by this stream will be written to the write stream until this stream ends or fails.

      Specified by:
        `rxPipeTo` in interface `ReadStream<Req>`
      Overrides:
        `rxPipeTo` in class `GrpcReadStream<Resp>`
      Parameters:
        `dst` - the destination write stream
      Returns:
        a future notified when the write stream will be ended with the outcome

    - #### last

          public Future<Resp> last()

      Overrides:
        `last` in class `GrpcReadStream<Resp>`
      Returns:
        the last element of the stream

    - #### rxLast

          public Single<Resp> rxLast()

      Overrides:
        `rxLast` in class `GrpcReadStream<Resp>`
      Returns:
        the last element of the stream

    - #### status

          public GrpcStatus status()

      Returns:
        the gRPC status or `null` when the status has not yet been received

    - #### statusMessage

          public String statusMessage()

      Returns:
        the gRPC status message of `null` when the status has not yet been received or not transmitted

    - #### trailers

          public MultiMap trailers()

      Returns:
        the to write metadata trailers

    - #### messageHandler

          public GrpcClientResponse<Req,​Resp> messageHandler​(Handler<GrpcMessage> handler)

      Description copied from class: `GrpcReadStream`
      Set a handler to be notified with incoming encoded messages. The `handler` is responsible for fully decoding incoming messages, including compression.
      Overrides:
        `messageHandler` in class `GrpcReadStream<Resp>`
      Parameters:
        `handler` - the message handler
      Returns:
        a reference to this, so the API can be used fluently

    - #### errorHandler

          public GrpcClientResponse<Req,​Resp> errorHandler​(Handler<GrpcError> handler)

      Description copied from class: `GrpcReadStream`
      Set a handler to be notified with gRPC errors.
      Overrides:
        `errorHandler` in class `GrpcReadStream<Resp>`
      Parameters:
        `handler` - the error handler
      Returns:
        a reference to this, so the API can be used fluently

    - #### exceptionHandler

          public GrpcClientResponse<Req,​Resp> exceptionHandler​(Handler<Throwable> handler)

      Description copied from interface: `ReadStream`
      Set an exception handler on the read stream.
      Specified by:
        `exceptionHandler` in interface `ReadStream<Req>`
      Specified by:
        `exceptionHandler` in interface `StreamBase`
      Overrides:
        `exceptionHandler` in class `GrpcReadStream<Resp>`
      Parameters:
        `handler` - the exception handler
      Returns:
        a reference to this, so the API can be used fluently

    - #### handler

          public GrpcClientResponse<Req,​Resp> handler​(Handler<Resp> handler)

      Description copied from interface: `ReadStream`
      Set a data handler. As data is read, the handler will be called with the data.
      Specified by:
        `handler` in interface `ReadStream<Req>`
      Overrides:
        `handler` in class `GrpcReadStream<Resp>`
      Returns:
        a reference to this, so the API can be used fluently

    - #### endHandler

          public GrpcClientResponse<Req,​Resp> endHandler​(Handler<Void> handler)

      Description copied from interface: `ReadStream`
      Set an end handler. Once the stream has ended, and there is no more data to be read, this handler will be called.
      Specified by:
        `endHandler` in interface `ReadStream<Req>`
      Overrides:
        `endHandler` in class `GrpcReadStream<Resp>`
      Returns:
        a reference to this, so the API can be used fluently

    - #### pause

          public GrpcClientResponse<Req,​Resp> pause()

      Description copied from interface: `ReadStream`
      Pause the `ReadStream`, it sets the buffer in `fetch` mode and clears the actual demand.

      While it's paused, no data will be sent to the data `handler`.

      Specified by:
        `pause` in interface `ReadStream<Req>`
      Overrides:
        `pause` in class `GrpcReadStream<Resp>`
      Returns:
        a reference to this, so the API can be used fluently

    - #### resume

          public GrpcClientResponse<Req,​Resp> resume()

      Description copied from interface: `ReadStream`
      Resume reading, and sets the buffer in `flowing` mode.

      If the `ReadStream` has been paused, reading will recommence on it.
      Specified by:
        `resume` in interface `ReadStream<Req>`
      Overrides:
        `resume` in class `GrpcReadStream<Resp>`
      Returns:
        a reference to this, so the API can be used fluently

    - #### fetch

          public GrpcClientResponse<Req,​Resp> fetch​(long amount)

      Description copied from interface: `ReadStream`
      Fetch the specified `amount` of elements. If the `ReadStream` has been paused, reading will recommence with the specified `amount` of items, otherwise the specified `amount` will be added to the current stream demand.
      Specified by:
        `fetch` in interface `ReadStream<Req>`
      Overrides:
        `fetch` in class `GrpcReadStream<Resp>`
      Returns:
        a reference to this, so the API can be used fluently

    - #### invalidMessageHandler

          public GrpcReadStream<Resp> invalidMessageHandler​(Handler<InvalidMessageException> handler)

      Set a message handler that is reported with invalid message errors.

      Warning: setting this handler overwrite the default handler which takes appropriate measure when an invalid message is encountered such as cancelling the stream. This handler should be set when control over invalid messages is required.

      Overrides:
        `invalidMessageHandler` in class `GrpcReadStream<Resp>`
      Parameters:
        `handler` - the invalid message handler
      Returns:
        a reference to this, so the API can be used fluently

    - #### newInstance

          public static <Req,​Resp> GrpcClientResponse<Req,​Resp> newInstance​(GrpcClientResponse arg)

    - #### newInstance

          public static <Req,​Resp> GrpcClientResponse<Req,​Resp> newInstance​(GrpcClientResponse arg,
                                                                                        io.vertx.lang.rx.TypeArg<Req> __typeArg_Req,
                                                                                        io.vertx.lang.rx.TypeArg<Resp> __typeArg_Resp)