Interface WebSocketListener
-
- All Known Implementing Classes:
WebSocketAdapter
public interface WebSocketListener
Listener interface to receive WebSocket events.
Read included Apache License 2.0:HERE
AllNeoVisionaries.WebSockets.*
Code Obtained From:GitHub 'NV' (Takahiko Kawasaki)
Public Archive.
An implementation of this interface should be added by
WebSocket.addListener(WebSocketListener)
to aWebSocket
instance before callingWebSocket.connect()
.WebSocketAdapter
is an empty implementation of this interface.
Hi-Lited Source-Code:- View Here: NeoVisionaries/WebSockets/WebSocketListener.java
- Open New Browser-Tab: NeoVisionaries/WebSockets/WebSocketListener.java
File Size: 21,554 Bytes Line Count: 631 '\n' Characters Found
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
handleCallbackError(WebSocket websocket, Throwable cause)
Called when anonXxx()
method threw aThrowable
.void
onBinaryFrame(WebSocket websocket, WebSocketFrame frame)
Called when a binary frame (opcode = 0x2) was received.void
onBinaryMessage(WebSocket websocket, byte[] binary)
Called when a binary message was received.void
onCloseFrame(WebSocket websocket, WebSocketFrame frame)
Called when a close frame (opcode = 0x8) was received.void
onConnected(WebSocket websocket, Map<String,List<String>> headers)
Called after the opening handshake of the WebSocket connection succeeded.void
onConnectError(WebSocket websocket, WebSocketException cause)
Called whenWebSocket.connectAsynchronously()
failed.void
onContinuationFrame(WebSocket websocket, WebSocketFrame frame)
Called when a continuation frame (opcode = 0x0) was received.void
onDisconnected(WebSocket websocket, WebSocketFrame serverCloseFrame, WebSocketFrame clientCloseFrame, boolean closedByServer)
Called after the WebSocket connection was closed.void
onError(WebSocket websocket, WebSocketException cause)
Call when an error occurred.void
onFrame(WebSocket websocket, WebSocketFrame frame)
Called when a frame was received.void
onFrameError(WebSocket websocket, WebSocketException cause, WebSocketFrame frame)
Called when a WebSocket frame failed to be read from the WebSocket.void
onFrameSent(WebSocket websocket, WebSocketFrame frame)
Called when a WebSocket frame was sent to the server (but not flushed yet).void
onFrameUnsent(WebSocket websocket, WebSocketFrame frame)
Called when a WebSocket frame was not sent to the server because a close frame has already been sent.void
onMessageDecompressionError(WebSocket websocket, WebSocketException cause, byte[] compressed)
Called when a message failed to be decompressed.void
onMessageError(WebSocket websocket, WebSocketException cause, List<WebSocketFrame> frames)
Called when it failed to concatenate payloads of multiple frames to construct a message.void
onPingFrame(WebSocket websocket, WebSocketFrame frame)
Called when a ping frame (opcode = 0x9) was received.void
onPongFrame(WebSocket websocket, WebSocketFrame frame)
Called when a pong frame (opcode = 0xA) was received.void
onSendError(WebSocket websocket, WebSocketException cause, WebSocketFrame frame)
Called when an error occurred when a frame was tried to be sent to the server.void
onSendingFrame(WebSocket websocket, WebSocketFrame frame)
Called before a WebSocket frame is sent.void
onSendingHandshake(WebSocket websocket, String requestLine, List<String[]> headers)
Called before an opening handshake is sent to the server.void
onStateChanged(WebSocket websocket, WebSocketState newState)
Called after the state of the WebSocket changed.void
onTextFrame(WebSocket websocket, WebSocketFrame frame)
Called when a text frame (opcode = 0x1) was received.void
onTextMessage(WebSocket websocket, byte[] data)
Called when a text message was received instead ofonTextMessage(WebSocket, String)
whenWebSocket.isDirectTextMessage()
returnstrue
.void
onTextMessage(WebSocket websocket, String text)
Called when a text message was received.void
onTextMessageError(WebSocket websocket, WebSocketException cause, byte[] data)
Called when it failed to convert payload data into a string.void
onThreadCreated(WebSocket websocket, ThreadType threadType, Thread thread)
Called between after a thread is created and before the thread'sstart()
method is called.void
onThreadStarted(WebSocket websocket, ThreadType threadType, Thread thread)
Called at the very beginning of the thread'srun()
method implementation.void
onThreadStopping(WebSocket websocket, ThreadType threadType, Thread thread)
Called at the very end of the thread'srun()
method implementation.void
onUnexpectedError(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
-true
if the closing handshake was started by the server.false
if 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 anonXxxFrame
method 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
onFrameUnsent
is not called whenonSendError
is 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 anonXxxError
method 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, passfalse
toWebSocket.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 isnull
when 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
- TheThrowable
anonXxx
method 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
-
-