public class TyrusWebSocket
extends java.lang.Object
Instance of this class represents one bi-directional websocket connection.
| Constructor and Description | 
|---|
| TyrusWebSocket(ProtocolHandler protocolHandler,
              TyrusEndpointWrapper endpointWrapper)Create new instance, set  ProtocolHandlerand registerTyrusEndpointWrapper. | 
| Modifier and Type | Method and Description | 
|---|---|
| void | close()Closes this  TyrusWebSocket. | 
| void | close(CloseReason closeReason)Closes this  TyrusWebSocketusing theCloseReason. | 
| void | close(int code,
     java.lang.String reason)Closes this  TyrusWebSocketusing the specified status code and
 reason. | 
| boolean | isConnected()Convenience method to determine if this  TyrusWebSocketinstance is connected. | 
| void | onClose(CloseFrame frame)This callback will be invoked when the remote endpoint sent a closing frame. | 
| void | onConnect(UpgradeRequest upgradeRequest,
         java.lang.String subProtocol,
         java.util.List<Extension> extensions,
         java.lang.String connectionId,
         DebugContext debugContext)This callback will be invoked when the opening handshake between both
 endpoints has been completed. | 
| void | onFragment(BinaryFrame frame,
          boolean last)This callback will be invoked when a fragmented binary message has
 been received. | 
| void | onFragment(TextFrame frame,
          boolean last)This callback will be invoked when a fragmented textual message has
 been received. | 
| void | onMessage(BinaryFrame frame)This callback will be invoked when a binary message has been received. | 
| void | onMessage(TextFrame frame)This callback will be invoked when a text message has been received. | 
| void | onPing(PingFrame frame)This callback will be invoked when the remote endpoint has sent a ping frame. | 
| void | onPong(PongFrame frame)This callback will be invoked when the remote endpoint has sent a pong
 frame. | 
| java.util.concurrent.Future<Frame> | sendBinary(byte[] data)Deprecated.  | 
| java.util.concurrent.Future<Frame> | sendBinary(byte[] bytes,
          boolean last)Deprecated.  | 
| java.util.concurrent.Future<Frame> | sendBinary(byte[] bytes,
          boolean last,
          WriterInfo writerInfo)Sends a fragment of a complete message. | 
| java.util.concurrent.Future<Frame> | sendBinary(byte[] bytes,
          int off,
          int len,
          boolean last)Deprecated.  | 
| java.util.concurrent.Future<Frame> | sendBinary(byte[] bytes,
          int off,
          int len,
          boolean last,
          WriterInfo writerInfo)Sends a fragment of a complete message. | 
| void | sendBinary(byte[] data,
          SendHandler handler)Deprecated.  | 
| void | sendBinary(byte[] data,
          SendHandler handler,
          WriterInfo writerInfo)Send a binary frame to the remote endpoint. | 
| java.util.concurrent.Future<Frame> | sendBinary(byte[] data,
          WriterInfo writerInfo)Send a binary frame to the remote endpoint. | 
| java.util.concurrent.Future<Frame> | sendPing(byte[] data)Sends a  pingframe with the specified payload (if any). | 
| java.util.concurrent.Future<Frame> | sendPong(byte[] data)Sends a  pingframe with the specified payload (if any). | 
| java.util.concurrent.Future<Frame> | sendRawFrame(java.nio.ByteBuffer data)Send a frame to the remote endpoint. | 
| java.util.concurrent.Future<Frame> | sendText(java.lang.String data)Deprecated.  | 
| java.util.concurrent.Future<Frame> | sendText(java.lang.String fragment,
        boolean last)Deprecated.  | 
| java.util.concurrent.Future<Frame> | sendText(java.lang.String fragment,
        boolean last,
        WriterInfo writerInfo)Sends a fragment of a complete message. | 
| void | sendText(java.lang.String data,
        SendHandler handler)Deprecated.  | 
| void | sendText(java.lang.String data,
        SendHandler handler,
        WriterInfo writerInfo)Send a text frame to the remote endpoint. | 
| java.util.concurrent.Future<Frame> | sendText(java.lang.String data,
        WriterInfo writerInfo)Send a text frame to the remote endpoint. | 
| void | setWriteTimeout(long timeoutMs)Sets the timeout for the writing operation. | 
public TyrusWebSocket(ProtocolHandler protocolHandler, TyrusEndpointWrapper endpointWrapper)
ProtocolHandler and register TyrusEndpointWrapper.protocolHandler - used for writing data (sending).endpointWrapper - notifies registered endpoints about incoming events.public void setWriteTimeout(long timeoutMs)
timeoutMs - timeout in milliseconds.public boolean isConnected()
TyrusWebSocket instance is connected.true if the TyrusWebSocket is connected, false otherwise.public void onClose(CloseFrame frame)
 The execution of this method is synchronized using ProtocolHandler instance; see TYRUS-385. Prevents
 multiple invocations, especially from container/user code.
frame - the close frame from the remote endpoint.public void onConnect(UpgradeRequest upgradeRequest, java.lang.String subProtocol, java.util.List<Extension> extensions, java.lang.String connectionId, DebugContext debugContext)
upgradeRequest - request associated with this socket.subProtocol - negotiated subprotocol.extensions - negotiated extensions.connectionId - connection id.debugContext - debug context.public void onFragment(BinaryFrame frame, boolean last)
frame - the binary data received from the remote endpoint.last - flag indicating whether or not the payload received is the final fragment of a message.public void onFragment(TextFrame frame, boolean last)
frame - the text received from the remote endpoint.last - flag indicating whether or not the payload received is the final fragment of a message.public void onMessage(BinaryFrame frame)
frame - the binary data received from the remote endpoint.public void onMessage(TextFrame frame)
frame - the text received from the remote endpoint.public void onPing(PingFrame frame)
frame - the ping frame from the remote endpoint.public void onPong(PongFrame frame)
frame - the pong frame from the remote endpoint.public void close()
TyrusWebSocket.public void close(int code,
                  java.lang.String reason)
TyrusWebSocket using the specified status code and
 reason.code - the closing status code.reason - the reason, if any.public void close(CloseReason closeReason)
TyrusWebSocket using the CloseReason.closeReason - the close reason.@Deprecated public java.util.concurrent.Future<Frame> sendBinary(byte[] data)
data - data to be sent.Future which could be used to control/check the sending completion state.public java.util.concurrent.Future<Frame> sendBinary(byte[] data, WriterInfo writerInfo)
data - data to be sent.writerInfo - information about the outbound message.Future which could be used to control/check the sending completion state.@Deprecated
public void sendBinary(byte[] data,
                                   SendHandler handler)
data - data to be sent.handler - SendHandler.onResult(jakarta.websocket.SendResult) will be called when sending is complete.public void sendBinary(byte[] data,
                       SendHandler handler,
                       WriterInfo writerInfo)
data - data to be sent.writerInfo - information about the outbound message.handler - SendHandler.onResult(jakarta.websocket.SendResult) will be called when sending is complete.@Deprecated public java.util.concurrent.Future<Frame> sendText(java.lang.String data)
data - data to be sent.Future which could be used to control/check the sending completion state.public java.util.concurrent.Future<Frame> sendText(java.lang.String data, WriterInfo writerInfo)
data - data to be sent.writerInfo - information about the outbound message.Future which could be used to control/check the sending completion state.@Deprecated
public void sendText(java.lang.String data,
                                 SendHandler handler)
data - data to be sent.handler - SendHandler.onResult(jakarta.websocket.SendResult) will be called when sending is complete.public void sendText(java.lang.String data,
                     SendHandler handler,
                     WriterInfo writerInfo)
data - data to be sent.writerInfo - information about the outbound message.handler - SendHandler.onResult(jakarta.websocket.SendResult) will be called when sending is complete.public java.util.concurrent.Future<Frame> sendRawFrame(java.nio.ByteBuffer data)
data - complete data frame.Future which could be used to control/check the sending completion state.public java.util.concurrent.Future<Frame> sendPing(byte[] data)
ping frame with the specified payload (if any).data - optional payload.  Note that payload length is restricted to 125 bytes or less.Future which could be used to control/check the sending completion state.public java.util.concurrent.Future<Frame> sendPong(byte[] data)
ping frame with the specified payload (if any).
 It may seem odd to send a pong frame, however, RFC-6455 states: "A Pong frame MAY be sent unsolicited. This serves as a unidirectional heartbeat. A response to an unsolicited Pong frame is not expected."
data - optional payload.  Note that payload length is restricted
             to 125 bytes or less.Future which could be used to control/check the sending completion state.@Deprecated public java.util.concurrent.Future<Frame> sendText(java.lang.String fragment, boolean last)
fragment - the textual fragment to send.last - boolean indicating if this message fragment is the last.Future which could be used to control/check the sending completion state.public java.util.concurrent.Future<Frame> sendText(java.lang.String fragment, boolean last, WriterInfo writerInfo)
fragment - the textual fragment to send.last - boolean indicating if this message fragment is the last.writerInfo - information about the outbound message.Future which could be used to control/check the sending completion state.@Deprecated public java.util.concurrent.Future<Frame> sendBinary(byte[] bytes, boolean last)
bytes - the binary fragment to send.last - boolean indicating if this message fragment is the last.Future which could be used to control/check the sending completion state.public java.util.concurrent.Future<Frame> sendBinary(byte[] bytes, boolean last, WriterInfo writerInfo)
bytes - the binary fragment to send.last - boolean indicating if this message fragment is the last.writerInfo - information about the outbound message.Future which could be used to control/check the sending completion state.@Deprecated public java.util.concurrent.Future<Frame> sendBinary(byte[] bytes, int off, int len, boolean last)
bytes - the binary fragment to send.off - the offset within the fragment to send.len - the number of bytes of the fragment to send.last - boolean indicating if this message fragment is the last.Future which could be used to control/check the sending completion state.public java.util.concurrent.Future<Frame> sendBinary(byte[] bytes, int off, int len, boolean last, WriterInfo writerInfo)
bytes - the binary fragment to send.off - the offset within the fragment to send.len - the number of bytes of the fragment to send.last - boolean indicating if this message fragment is the last.writerInfo - information about the outbound message.Future which could be used to control/check the sending completion state.Copyright © 2012–2020 Oracle Corporation. All rights reserved.