Class StompClientConnection


  • public class StompClientConnection
    extends Object
    Once a connection to the STOMP server has been made, client receives a StompClientConnection, that let send and receive STOMP frames.

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

    • Constructor Detail

      • StompClientConnection

        public StompClientConnection​(Object delegate)
    • Method Detail

      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object
      • session

        public String session()
        Returns:
        the session id.
      • version

        public String version()
        Returns:
        the STOMP protocol version negotiated with the server.
      • close

        public void close()
        Closes the connection without sending the DISCONNECT frame.
      • server

        public String server()
        Returns:
        the server name.
      • send

        public Single<Frame> send​(Map<String,​String> headers,
                                  Buffer body)
        Sends a SEND frame to the server.
        Parameters:
        headers - the headers, must not be null
        body - the body, may be null
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • rxSend

        public Single<Frame> rxSend​(Map<String,​String> headers,
                                    Buffer body)
        Sends a SEND frame to the server.
        Parameters:
        headers - the headers, must not be null
        body - the body, may be null
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • send

        public Single<Frame> send​(String destination,
                                  Buffer body)
        Sends a SEND frame to the server to the given destination. The message does not have any other header.
        Parameters:
        destination - the destination, must not be null
        body - the body, may be null
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • rxSend

        public Single<Frame> rxSend​(String destination,
                                    Buffer body)
        Sends a SEND frame to the server to the given destination. The message does not have any other header.
        Parameters:
        destination - the destination, must not be null
        body - the body, may be null
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • send

        public Single<Frame> send​(Frame frame)
        Sends the given frame to the server.
        Parameters:
        frame - the frame
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • rxSend

        public Single<Frame> rxSend​(Frame frame)
        Sends the given frame to the server.
        Parameters:
        frame - the frame
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • send

        public Single<Frame> send​(String destination,
                                  Map<String,​String> headers,
                                  Buffer body)
        Sends a SEND frame to the server to the given destination.
        Parameters:
        destination - the destination, must not be null
        headers - the header. The destination header is replaced by the value given to the destination parameter
        body - the body, may be null
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • rxSend

        public Single<Frame> rxSend​(String destination,
                                    Map<String,​String> headers,
                                    Buffer body)
        Sends a SEND frame to the server to the given destination.
        Parameters:
        destination - the destination, must not be null
        headers - the header. The destination header is replaced by the value given to the destination parameter
        body - the body, may be null
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • subscribe

        public Single<String> subscribe​(String destination,
                                        Handler<Frame> handler)
        Subscribes to the given destination. This destination is used as subscription id.
        Parameters:
        destination - the destination, must not be null
        handler - the handler invoked when a message is received on the given destination. Must not be null.
        Returns:
        a future resolved with the subscription id when the RECEIPT frame associated with the sent frame has been received
      • rxSubscribe

        public Single<String> rxSubscribe​(String destination,
                                          Handler<Frame> handler)
        Subscribes to the given destination. This destination is used as subscription id.
        Parameters:
        destination - the destination, must not be null
        handler - the handler invoked when a message is received on the given destination. Must not be null.
        Returns:
        a future resolved with the subscription id when the RECEIPT frame associated with the sent frame has been received
      • subscribe

        public Single<String> subscribe​(String destination,
                                        Map<String,​String> headers,
                                        Handler<Frame> handler)
        Subscribes to the given destination.
        Parameters:
        destination - the destination, must not be null.
        headers - the headers to configure the subscription. It may contain the ack header to configure the acknowledgment policy. If the given set of headers contains the id header, this value is used as subscription id.
        handler - the handler invoked when a message is received on the given destination. Must not be null.
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • rxSubscribe

        public Single<String> rxSubscribe​(String destination,
                                          Map<String,​String> headers,
                                          Handler<Frame> handler)
        Subscribes to the given destination.
        Parameters:
        destination - the destination, must not be null.
        headers - the headers to configure the subscription. It may contain the ack header to configure the acknowledgment policy. If the given set of headers contains the id header, this value is used as subscription id.
        handler - the handler invoked when a message is received on the given destination. Must not be null.
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • unsubscribe

        public Single<Frame> unsubscribe​(String destination)
        Un-subscribes from the given destination. This method only works if the subscription did not specifies a subscription id (using the id header).
        Parameters:
        destination - the destination
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • rxUnsubscribe

        public Single<Frame> rxUnsubscribe​(String destination)
        Un-subscribes from the given destination. This method only works if the subscription did not specifies a subscription id (using the id header).
        Parameters:
        destination - the destination
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • unsubscribe

        public Single<Frame> unsubscribe​(String destination,
                                         Map<String,​String> headers)
        Un-subscribes from the given destination. This method computes the subscription id as follows. If the given headers contains the id header, the header value is used. Otherwise the destination is used.
        Parameters:
        destination - the destination
        headers - the headers
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • rxUnsubscribe

        public Single<Frame> rxUnsubscribe​(String destination,
                                           Map<String,​String> headers)
        Un-subscribes from the given destination. This method computes the subscription id as follows. If the given headers contains the id header, the header value is used. Otherwise the destination is used.
        Parameters:
        destination - the destination
        headers - the headers
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • connectionDroppedHandler

        public StompClientConnection connectionDroppedHandler​(Handler<StompClientConnection> handler)
        Sets a handler notified when the server does not respond to a ping request in time. In other words, this handler is invoked when the heartbeat has detected a connection failure with the server. The handler can decide to reconnect to the server.
        Parameters:
        handler - the handler
        Returns:
        the current StompClientConnection receiving the dropped connection.
      • pingHandler

        public StompClientConnection pingHandler​(Handler<StompClientConnection> handler)
        Sets a handler that let customize the behavior when a ping needs to be sent to the server. Be aware that changing the default behavior may break the compliance with the STOMP specification.
        Parameters:
        handler - the handler
        Returns:
        the current StompClientConnection
      • beginTX

        public Single<Frame> beginTX​(String id)
        Begins a transaction.
        Parameters:
        id - the transaction id, must not be null
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • rxBeginTX

        public Single<Frame> rxBeginTX​(String id)
        Begins a transaction.
        Parameters:
        id - the transaction id, must not be null
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • beginTX

        public Single<Frame> beginTX​(String id,
                                     Map<String,​String> headers)
        Begins a transaction.
        Parameters:
        id - the transaction id, must not be null
        headers - additional headers to send to the server. The transaction header is replaced by the value passed in the @{code id} parameter
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • rxBeginTX

        public Single<Frame> rxBeginTX​(String id,
                                       Map<String,​String> headers)
        Begins a transaction.
        Parameters:
        id - the transaction id, must not be null
        headers - additional headers to send to the server. The transaction header is replaced by the value passed in the @{code id} parameter
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • commit

        public Single<Frame> commit​(String id)
        Commits a transaction.
        Parameters:
        id - the transaction id, must not be null
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • rxCommit

        public Single<Frame> rxCommit​(String id)
        Commits a transaction.
        Parameters:
        id - the transaction id, must not be null
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • commit

        public Single<Frame> commit​(String id,
                                    Map<String,​String> headers)
        Commits a transaction.
        Parameters:
        id - the transaction id, must not be null
        headers - additional headers to send to the server. The transaction header is replaced by the value passed in the @{code id} parameter
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • rxCommit

        public Single<Frame> rxCommit​(String id,
                                      Map<String,​String> headers)
        Commits a transaction.
        Parameters:
        id - the transaction id, must not be null
        headers - additional headers to send to the server. The transaction header is replaced by the value passed in the @{code id} parameter
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • abort

        public Single<Frame> abort​(String id)
        Aborts a transaction.
        Parameters:
        id - the transaction id, must not be null
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • rxAbort

        public Single<Frame> rxAbort​(String id)
        Aborts a transaction.
        Parameters:
        id - the transaction id, must not be null
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • abort

        public Single<Frame> abort​(String id,
                                   Map<String,​String> headers)
        Aborts a transaction.
        Parameters:
        id - the transaction id, must not be null
        headers - additional headers to send to the server. The transaction header is replaced by the value passed in the @{code id} parameter
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • rxAbort

        public Single<Frame> rxAbort​(String id,
                                     Map<String,​String> headers)
        Aborts a transaction.
        Parameters:
        id - the transaction id, must not be null
        headers - additional headers to send to the server. The transaction header is replaced by the value passed in the @{code id} parameter
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • disconnect

        public Single<Frame> disconnect()
        Disconnects the client. Unlike the close() method, this method send the DISCONNECT frame to the server.
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • rxDisconnect

        public Single<Frame> rxDisconnect()
        Disconnects the client. Unlike the close() method, this method send the DISCONNECT frame to the server.
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • disconnect

        public Single<Frame> disconnect​(Frame frame)
        Disconnects the client. Unlike the close() method, this method send the DISCONNECT frame to the server. This method lets you customize the DISCONNECT frame.
        Parameters:
        frame - the DISCONNECT frame.
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • rxDisconnect

        public Single<Frame> rxDisconnect​(Frame frame)
        Disconnects the client. Unlike the close() method, this method send the DISCONNECT frame to the server. This method lets you customize the DISCONNECT frame.
        Parameters:
        frame - the DISCONNECT frame.
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • ack

        public Single<Frame> ack​(String id)
        Sends an acknowledgement for a specific message. It means that the message has been handled and processed by the client. The id parameter is the message id received in the frame.
        Parameters:
        id - the message id of the message to acknowledge
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • rxAck

        public Single<Frame> rxAck​(String id)
        Sends an acknowledgement for a specific message. It means that the message has been handled and processed by the client. The id parameter is the message id received in the frame.
        Parameters:
        id - the message id of the message to acknowledge
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • nack

        public Single<Frame> nack​(String id)
        Sends a non-acknowledgement for the given message. It means that the message has not been handled by the client. The id parameter is the message id received in the frame.
        Parameters:
        id - the message id of the message to acknowledge
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • rxNack

        public Single<Frame> rxNack​(String id)
        Sends a non-acknowledgement for the given message. It means that the message has not been handled by the client. The id parameter is the message id received in the frame.
        Parameters:
        id - the message id of the message to acknowledge
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • ack

        public Single<Frame> ack​(String id,
                                 String txId)
        Sends an acknowledgement for the given frame. It means that the frame has been handled and processed by the client. The sent acknowledgement is part of the transaction identified by the given id.
        Parameters:
        id - the message id of the message to acknowledge
        txId - the transaction id
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • rxAck

        public Single<Frame> rxAck​(String id,
                                   String txId)
        Sends an acknowledgement for the given frame. It means that the frame has been handled and processed by the client. The sent acknowledgement is part of the transaction identified by the given id.
        Parameters:
        id - the message id of the message to acknowledge
        txId - the transaction id
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • nack

        public Single<Frame> nack​(String id,
                                  String txId)
        Sends a non-acknowledgement for the given frame. It means that the frame has not been handled by the client. The sent non-acknowledgement is part of the transaction identified by the given id.
        Parameters:
        id - the message id of the message to acknowledge
        txId - the transaction id
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • rxNack

        public Single<Frame> rxNack​(String id,
                                    String txId)
        Sends a non-acknowledgement for the given frame. It means that the frame has not been handled by the client. The sent non-acknowledgement is part of the transaction identified by the given id.
        Parameters:
        id - the message id of the message to acknowledge
        txId - the transaction id
        Returns:
        a future resolved with the sent frame when the RECEIPT frame associated with the sent frame has been received
      • writingFrameHandler

        public StompClientConnection writingFrameHandler​(Handler<Frame> handler)
        Configures a handler notified when a frame is going to be written on the wire. This handler can be used from logging, debugging. The handler can modify the received frame.

        If a writing frame handler is set on the StompClient, it will be used by all clients connection, so calling this method is useless, except if you want to use a different handler.

        Parameters:
        handler - the handler
        Returns:
        the current StompClientConnection
      • isConnected

        public boolean isConnected()
        Returns whether or not the `CONNECTED` frame has been receive meaning that the Stomp connection is established.
        Returns:
        true if the connection is established, false otherwise