Interface WebSocketListener
-
- All Known Implementing Classes:
WebSocketAdapter
public interface WebSocketListenerListener interface to receive WebSocket events.An implementation of this interface should be added by
WebSocket.addListener(WebSocketListener)to aWebSocketinstance before callingWebSocket.connect().WebSocketAdapteris an empty implementation of this interface.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidhandleCallbackError(WebSocket websocket, java.lang.Throwable cause)Called when anonXxx()method threw aThrowable.voidonBinaryFrame(WebSocket websocket, WebSocketFrame frame)Called when a binary frame (opcode = 0x2) was received.voidonBinaryMessage(WebSocket websocket, byte[] binary)Called when a binary message was received.voidonCloseFrame(WebSocket websocket, WebSocketFrame frame)Called when a close frame (opcode = 0x8) was received.voidonConnected(WebSocket websocket, java.util.Map<java.lang.String,java.util.List<java.lang.String>> headers)Called after the opening handshake of the WebSocket connection succeeded.voidonConnectError(WebSocket websocket, WebSocketException cause)Called whenWebSocket.connectAsynchronously()failed.voidonContinuationFrame(WebSocket websocket, WebSocketFrame frame)Called when a continuation frame (opcode = 0x0) was received.voidonDisconnected(WebSocket websocket, WebSocketFrame serverCloseFrame, WebSocketFrame clientCloseFrame, boolean closedByServer)Called after the WebSocket connection was closed.voidonError(WebSocket websocket, WebSocketException cause)Call when an error occurred.voidonFrame(WebSocket websocket, WebSocketFrame frame)Called when a frame was received.voidonFrameError(WebSocket websocket, WebSocketException cause, WebSocketFrame frame)Called when a WebSocket frame failed to be read from the WebSocket.voidonFrameSent(WebSocket websocket, WebSocketFrame frame)Called when a WebSocket frame was sent to the server (but not flushed yet).voidonFrameUnsent(WebSocket websocket, WebSocketFrame frame)Called when a WebSocket frame was not sent to the server because a close frame has already been sent.voidonMessageDecompressionError(WebSocket websocket, WebSocketException cause, byte[] compressed)Called when a message failed to be decompressed.voidonMessageError(WebSocket websocket, WebSocketException cause, java.util.List<WebSocketFrame> frames)Called when it failed to concatenate payloads of multiple frames to construct a message.voidonPingFrame(WebSocket websocket, WebSocketFrame frame)Called when a ping frame (opcode = 0x9) was received.voidonPongFrame(WebSocket websocket, WebSocketFrame frame)Called when a pong frame (opcode = 0xA) was received.voidonSendError(WebSocket websocket, WebSocketException cause, WebSocketFrame frame)Called when an error occurred when a frame was tried to be sent to the server.voidonSendingFrame(WebSocket websocket, WebSocketFrame frame)Called before a WebSocket frame is sent.voidonSendingHandshake(WebSocket websocket, java.lang.String requestLine, java.util.List<java.lang.String[]> headers)Called before an opening handshake is sent to the server.voidonStateChanged(WebSocket websocket, WebSocketState newState)Called after the state of the WebSocket changed.voidonTextFrame(WebSocket websocket, WebSocketFrame frame)Called when a text frame (opcode = 0x1) was received.voidonTextMessage(WebSocket websocket, byte[] data)Called when a text message was received instead ofonTextMessage(WebSocket, String)whenWebSocket.isDirectTextMessage()returnstrue.voidonTextMessage(WebSocket websocket, java.lang.String text)Called when a text message was received.voidonTextMessageError(WebSocket websocket, WebSocketException cause, byte[] data)Called when it failed to convert payload data into a string.voidonThreadCreated(WebSocket websocket, ThreadType threadType, java.lang.Thread thread)Called between after a thread is created and before the thread'sstart()method is called.voidonThreadStarted(WebSocket websocket, ThreadType threadType, java.lang.Thread thread)Called at the very beginning of the thread'srun()method implementation.voidonThreadStopping(WebSocket websocket, ThreadType threadType, java.lang.Thread thread)Called at the very end of the thread'srun()method implementation.voidonUnexpectedError(WebSocket websocket, WebSocketException cause)Called when an uncaught throwable was detected in either the reading thread (which reads frames from the server) or the writing thread (which sends frames to the server).
-
-
-
Method Detail
-
onStateChanged
void onStateChanged(WebSocket websocket, WebSocketState newState) throws java.lang.Exception
Called after the state of the WebSocket changed.- Parameters:
websocket- The WebSocket.newState- The new state of the WebSocket.- Throws:
java.lang.Exception- An exception thrown by an implementation of this method. The exception is passed tohandleCallbackError(WebSocket, Throwable).- Since:
- 1.1
-
onConnected
void onConnected(WebSocket websocket, java.util.Map<java.lang.String,java.util.List<java.lang.String>> headers) throws java.lang.Exception
Called after the opening handshake of the WebSocket connection succeeded.- Parameters:
websocket- The WebSsocket.headers- HTTP headers received from the server. Keys of the map are HTTP header names such as"Sec-WebSocket-Accept". Note that the comparator used by the map isString.CASE_INSENSITIVE_ORDER.- Throws:
java.lang.Exception- An exception thrown by an implementation of this method. The exception is passed tohandleCallbackError(WebSocket, Throwable).
-
onConnectError
void onConnectError(WebSocket websocket, WebSocketException cause) throws java.lang.Exception
Called whenWebSocket.connectAsynchronously()failed.Note that this method is called only when
connectAsynchronously()was used and theconnect()executed in the background thread failed. Neither direct synchronousconnect()norconnect(ExecutorService)will trigger this callback method.- Parameters:
websocket- The WebSocket.cause- The exception thrown byconnect()method.- Throws:
java.lang.Exception- An exception thrown by an implementation of this method. The exception is passed tohandleCallbackError(WebSocket, Throwable).- Since:
- 1.8
-
onDisconnected
void onDisconnected(WebSocket websocket, WebSocketFrame serverCloseFrame, WebSocketFrame clientCloseFrame, boolean closedByServer) throws java.lang.Exception
Called after the WebSocket connection was closed.- Parameters:
websocket- The WebSocket.serverCloseFrame- The close frame which the server sent to this client. This may benull.clientCloseFrame- The close frame which this client sent to the server. This may benull.closedByServer-trueif the closing handshake was started by the server.falseif the closing handshake was started by the client.- Throws:
java.lang.Exception- An exception thrown by an implementation of this method. The exception is passed tohandleCallbackError(WebSocket, Throwable).
-
onFrame
void onFrame(WebSocket websocket, WebSocketFrame frame) throws java.lang.Exception
Called when a frame was received. This method is called before anonXxxFramemethod is called.- Parameters:
websocket- The WebSocket.frame- The frame.- Throws:
java.lang.Exception- An exception thrown by an implementation of this method. The exception is passed tohandleCallbackError(WebSocket, Throwable).
-
onContinuationFrame
void onContinuationFrame(WebSocket websocket, WebSocketFrame frame) throws java.lang.Exception
Called when a continuation frame (opcode = 0x0) was received.- Parameters:
websocket- The WebSocket.frame- The continuation frame.- Throws:
java.lang.Exception- An exception thrown by an implementation of this method. The exception is passed tohandleCallbackError(WebSocket, Throwable).
-
onTextFrame
void onTextFrame(WebSocket websocket, WebSocketFrame frame) throws java.lang.Exception
Called when a text frame (opcode = 0x1) was received.- Parameters:
websocket- The WebSocket.frame- The text frame.- Throws:
java.lang.Exception- An exception thrown by an implementation of this method. The exception is passed tohandleCallbackError(WebSocket, Throwable).
-
onBinaryFrame
void onBinaryFrame(WebSocket websocket, WebSocketFrame frame) throws java.lang.Exception
Called when a binary frame (opcode = 0x2) was received.- Parameters:
websocket- The WebSocket.frame- The binary frame.- Throws:
java.lang.Exception- An exception thrown by an implementation of this method. The exception is passed tohandleCallbackError(WebSocket, Throwable).
-
onCloseFrame
void onCloseFrame(WebSocket websocket, WebSocketFrame frame) throws java.lang.Exception
Called when a close frame (opcode = 0x8) was received.- Parameters:
websocket- The WebSocket.frame- The close frame.- Throws:
java.lang.Exception- An exception thrown by an implementation of this method. The exception is passed tohandleCallbackError(WebSocket, Throwable).
-
onPingFrame
void onPingFrame(WebSocket websocket, WebSocketFrame frame) throws java.lang.Exception
Called when a ping frame (opcode = 0x9) was received.- Parameters:
websocket- The WebSocket.frame- The ping frame.- Throws:
java.lang.Exception- An exception thrown by an implementation of this method. The exception is passed tohandleCallbackError(WebSocket, Throwable).
-
onPongFrame
void onPongFrame(WebSocket websocket, WebSocketFrame frame) throws java.lang.Exception
Called when a pong frame (opcode = 0xA) was received.- Parameters:
websocket- The WebSocket.frame- The pong frame.- Throws:
java.lang.Exception- An exception thrown by an implementation of this method. The exception is passed tohandleCallbackError(WebSocket, Throwable).
-
onTextMessage
void onTextMessage(WebSocket websocket, java.lang.String text) throws java.lang.Exception
Called when a text message was received.When
WebSocket.isDirectTextMessage()returnstrue,onTextMessage(WebSocket, byte[])will be called instead of this method (since version 2.6).- Parameters:
websocket- The WebSocket.text- The text message.- Throws:
java.lang.Exception- An exception thrown by an implementation of this method. The exception is passed tohandleCallbackError(WebSocket, Throwable).
-
onTextMessage
void onTextMessage(WebSocket websocket, byte[] data) throws java.lang.Exception
Called when a text message was received instead ofonTextMessage(WebSocket, String)whenWebSocket.isDirectTextMessage()returnstrue.- Parameters:
websocket- The WebSocket.data- The UTF-8 byte sequence of the text message.- Throws:
java.lang.Exception- An exception thrown by an implementation of this method. The exception is passed tohandleCallbackError(WebSocket, Throwable).- Since:
- 2.6
-
onBinaryMessage
void onBinaryMessage(WebSocket websocket, byte[] binary) throws java.lang.Exception
Called when a binary message was received.- Parameters:
websocket- The WebSocket.binary- The binary message.- Throws:
java.lang.Exception- An exception thrown by an implementation of this method. The exception is passed tohandleCallbackError(WebSocket, Throwable).
-
onSendingFrame
void onSendingFrame(WebSocket websocket, WebSocketFrame frame) throws java.lang.Exception
Called before a WebSocket frame is sent.- Parameters:
websocket- The WebSocket.frame- The WebSocket frame to be sent.- Throws:
java.lang.Exception- An exception thrown by an implementation of this method. The exception is passed tohandleCallbackError(WebSocket, Throwable).- Since:
- 1.15
-
onFrameSent
void onFrameSent(WebSocket websocket, WebSocketFrame frame) throws java.lang.Exception
Called when a WebSocket frame was sent to the server (but not flushed yet).- Parameters:
websocket- The WebSocket.frame- The sent frame.- Throws:
java.lang.Exception- An exception thrown by an implementation of this method. The exception is passed tohandleCallbackError(WebSocket, Throwable).
-
onFrameUnsent
void onFrameUnsent(WebSocket websocket, WebSocketFrame frame) throws java.lang.Exception
Called when a WebSocket frame was not sent to the server because a close frame has already been sent.Note that
onFrameUnsentis not called whenonSendErroris called.- Parameters:
websocket- The WebSocket.frame- The unsent frame.- Throws:
java.lang.Exception- An exception thrown by an implementation of this method. The exception is passed tohandleCallbackError(WebSocket, Throwable).
-
onThreadCreated
void onThreadCreated(WebSocket websocket, ThreadType threadType, java.lang.Thread thread) throws java.lang.Exception
Called between after a thread is created and before the thread'sstart()method is called.- Parameters:
websocket- The WebSocket.threadType- The thread type.thread- The newly created thread instance.- Throws:
java.lang.Exception- An exception thrown by an implementation of this method. The exception is passed tohandleCallbackError(WebSocket, Throwable).- Since:
- 2.0
-
onThreadStarted
void onThreadStarted(WebSocket websocket, ThreadType threadType, java.lang.Thread thread) throws java.lang.Exception
Called at the very beginning of the thread'srun()method implementation.- Parameters:
websocket- The WebSocket.threadType- The thread type.thread- The thread instance.- Throws:
java.lang.Exception- An exception thrown by an implementation of this method. The exception is passed tohandleCallbackError(WebSocket, Throwable).- Since:
- 2.0
-
onThreadStopping
void onThreadStopping(WebSocket websocket, ThreadType threadType, java.lang.Thread thread) throws java.lang.Exception
Called at the very end of the thread'srun()method implementation.- Parameters:
websocket- The WebSocket.threadType- The thread type.thread- The thread instance.- Throws:
java.lang.Exception- An exception thrown by an implementation of this method. The exception is passed tohandleCallbackError(WebSocket, Throwable).- Since:
- 2.0
-
onError
void onError(WebSocket websocket, WebSocketException cause) throws java.lang.Exception
Call when an error occurred. This method is called before anonXxxErrormethod is called.- Parameters:
websocket- The WebSocket.cause- An exception that represents the error.- Throws:
java.lang.Exception- An exception thrown by an implementation of this method. The exception is passed tohandleCallbackError(WebSocket, Throwable).
-
onFrameError
void onFrameError(WebSocket websocket, WebSocketException cause, WebSocketFrame frame) throws java.lang.Exception
Called when a WebSocket frame failed to be read from the WebSocket.Some WebSocket server implementations close a WebSocket connection without sending a close frame to a client in some cases. Strictly speaking, this behavior is a violation against the specification (RFC 6455). However, this library has allowed the behavior by default since the version 1.29. Even if the end of the input stream of a WebSocket connection were reached without a close frame being received, it would trigger neither
onError()method noronFrameError()method. If you want to make this library report an error in the case, passfalsetoWebSocket.setMissingCloseFrameAllowed(boolean)method.- Parameters:
websocket- The WebSocket.cause- An exception that represents the error. When the error occurred because ofInterruptedIOException,exception.getError()returnsWebSocketError.INTERRUPTED_IN_READING. For other IO errors,exception.getError()returnsWebSocketError.IO_ERROR_IN_READING. Other error codes denote protocol errors, which imply that some bugs may exist in either or both of the client-side and the server-side implementations.frame- The WebSocket frame. If this is notnull, it means that verification of the frame failed.- Throws:
java.lang.Exception- An exception thrown by an implementation of this method. The exception is passed tohandleCallbackError(WebSocket, Throwable).
-
onMessageError
void onMessageError(WebSocket websocket, WebSocketException cause, java.util.List<WebSocketFrame> frames) throws java.lang.Exception
Called when it failed to concatenate payloads of multiple frames to construct a message. The reason of the failure is probably out-of-memory.- Parameters:
websocket- The WebSocket.cause- An exception that represents the error.frames- The list of frames that form a message. The first element is either a text frame and a binary frame, and the other frames are continuation frames.- Throws:
java.lang.Exception- An exception thrown by an implementation of this method. The exception is passed tohandleCallbackError(WebSocket, Throwable).
-
onMessageDecompressionError
void onMessageDecompressionError(WebSocket websocket, WebSocketException cause, byte[] compressed) throws java.lang.Exception
Called when a message failed to be decompressed.- Parameters:
websocket- The WebSocket.cause- An exception that represents the error.compressed- The compressed message that failed to be decompressed.- Throws:
java.lang.Exception- An exception thrown by an implementation of this method. The exception is passed tohandleCallbackError(WebSocket, Throwable).- Since:
- 1.16
-
onTextMessageError
void onTextMessageError(WebSocket websocket, WebSocketException cause, byte[] data) throws java.lang.Exception
Called when it failed to convert payload data into a string. The reason of the failure is probably out-of-memory.- Parameters:
websocket- The WebSocket.cause- An exception that represents the error.data- The payload data that failed to be converted to a string.- Throws:
java.lang.Exception- An exception thrown by an implementation of this method. The exception is passed tohandleCallbackError(WebSocket, Throwable).
-
onSendError
void onSendError(WebSocket websocket, WebSocketException cause, WebSocketFrame frame) throws java.lang.Exception
Called when an error occurred when a frame was tried to be sent to the server.- Parameters:
websocket- The WebSocket.cause- An exception that represents the error.frame- The frame which was tried to be sent. This isnullwhen the error code of the exception isFLUSH_ERROR.- Throws:
java.lang.Exception- An exception thrown by an implementation of this method. The exception is passed tohandleCallbackError(WebSocket, Throwable).
-
onUnexpectedError
void onUnexpectedError(WebSocket websocket, WebSocketException cause) throws java.lang.Exception
Called when an uncaught throwable was detected in either the reading thread (which reads frames from the server) or the writing thread (which sends frames to the server).- Parameters:
websocket- The WebSocket.cause- The cause of the error.- Throws:
java.lang.Exception- An exception thrown by an implementation of this method. The exception is passed tohandleCallbackError(WebSocket, Throwable).
-
handleCallbackError
void handleCallbackError(WebSocket websocket, java.lang.Throwable cause) throws java.lang.Exception
Called when anonXxx()method threw aThrowable.- Parameters:
websocket- The WebSocket.cause- TheThrowableanonXxxmethod threw.- Throws:
java.lang.Exception- An exception thrown by an implementation of this method. The exception is just ignored.- Since:
- 1.9
-
onSendingHandshake
void onSendingHandshake(WebSocket websocket, java.lang.String requestLine, java.util.List<java.lang.String[]> headers) throws java.lang.Exception
Called before an opening handshake is sent to the server.- Parameters:
websocket- The WebSocket.requestLine- The request line. For example,"GET /chat HTTP/1.1".headers- The HTTP headers.- Throws:
java.lang.Exception- An exception thrown by an implementation of this method. The exception is passed tohandleCallbackError(WebSocket, Throwable).- Since:
- 1.21
-
-