Class ClientConnectionContinuation

  • All Implemented Interfaces:
    java.lang.AutoCloseable

    public class ClientConnectionContinuation
    extends CrtResource
    Java wrapper for event-stream-rpc client continuation.
    • Method Detail

      • activate

        public void activate​(java.lang.String operationName,
                             java.util.List<Header> headers,
                             byte[] payload,
                             MessageType messageType,
                             int messageFlags,
                             MessageFlushCallback callback)
        Initiates a new client stream. Sends new message for the new stream.
        Parameters:
        operationName - name for the operation to be invoked by the peer endpoint.
        headers - headers for the event-stream message, may be null or empty.
        payload - payload for the event-stream message, may be null or empty.
        messageType - messageType for the message. Must be ApplicationMessage or ApplicationError
        messageFlags - union of flags for MessageFlags.getByteValue()
        callback - callback to be invoked upon the message being flushed to the underlying transport.
      • activate

        public java.util.concurrent.CompletableFuture<java.lang.Void> activate​(java.lang.String operationName,
                                                                               java.util.List<Header> headers,
                                                                               byte[] payload,
                                                                               MessageType messageType,
                                                                               int messageFlags)
        Sends the initial message on a continuation, and begins the message flow for a stream.
        Parameters:
        operationName - name of the operation to invoke on the server.
        headers - list of additional event stream headers to include on the message.
        payload - payload for the message
        messageType - message type. Must be either ApplicationMessage or ApplicationError
        messageFlags - message flags for the message.
        Returns:
        Completeable future for syncing with the connection completing or failing.
      • sendMessage

        public void sendMessage​(java.util.List<Header> headers,
                                byte[] payload,
                                MessageType messageType,
                                int messageFlags,
                                MessageFlushCallback callback)
        Sends message on the continuation
        Parameters:
        headers - list of additional event stream headers to include on the message.
        payload - payload for the message
        messageType - message type. Must be either ApplicationMessage or ApplicationError
        messageFlags - message flags for the message, use TerminateStream to cause this message to close the continuation after sending.
        callback - completion callback to be invoked when the message is synced to the underlying transport.
      • sendMessage

        public java.util.concurrent.CompletableFuture<java.lang.Void> sendMessage​(java.util.List<Header> headers,
                                                                                  byte[] payload,
                                                                                  MessageType messageType,
                                                                                  int messageFlags)
        Sends message on the continuation
        Parameters:
        headers - list of additional event stream headers to include on the message.
        payload - payload for the message
        messageType - message type. Must be either ApplicationMessage or ApplicationError
        messageFlags - message flags for the message, use TerminateStream to cause this message to close the continuation after sending.
        Returns:
        Future for syncing when the message is flushed to the transport or fails.