Interface WebsocketMiddleware
- All Superinterfaces:
Middleware
middleware for manipulating websocket
clients connections.- Since:
- 3.4.0-SNAPSHOT
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptiondefault voidhandle(MiddlewareCallbackInfo callbackInfo, BaseExchange exchange) Defines the logic of the middleware.default voidhandleConnect(MiddlewareCallbackInfo callbackInfo, SocketExchange exchange) Defines middleware logic when a new websocket client connects to the server.default voidhandleDisconnect(MiddlewareCallbackInfo callbackInfo, SocketExchange exchange) Defines middleware logic when a new websocket client disconnects from the server.default voidhandleMessageReceived(MiddlewareCallbackInfo callbackInfo, SocketExchange exchange, Frame frame) Defines middleware logic when the server received a new message from the websocket client.default voidhandleMessageSent(MiddlewareCallbackInfo callbackInfo, SocketExchange exchange, Frame frame) Defines middleware logic when the server sends a new message to the websocket client.default booleanisApplicable(Class<? extends Server> server) Checks if themiddlewareis applicable of handling the specificserversexchange.Methods inherited from interface de.craftsblock.craftsnet.api.middlewares.Middleware
isApplicable
-
Method Details
-
handleConnect
Defines middleware logic when a new websocket client connects to the server.Note: The middleware logic is applied after the
ClientConnectEventand before the actual endpoint mapping logic of the websocket client.- Parameters:
callbackInfo- Thecallback infothat is used to store data between middlewares.exchange- The exchange holding the data of the websocket session.
-
handleDisconnect
Defines middleware logic when a new websocket client disconnects from the server.Note: The middleware logic is applied after the
ClientDisconnectEventand before the actual disconnect logic of the websocket client. Therefore that the websocket session is definitely going to be terminated theMiddlewareCallbackInfo.setCancelled(boolean)statement will be ignored.- Parameters:
callbackInfo- Thecallback infothat is used to store data between middlewares.exchange- The exchange holding the data of the websocket session.
-
handleMessageReceived
default void handleMessageReceived(MiddlewareCallbackInfo callbackInfo, SocketExchange exchange, Frame frame) Defines middleware logic when the server received a new message from the websocket client.Note: The middleware logic is applied after the
IncomingSocketMessageEventand before the actual endpoint message handling logic of the websocket client.- Parameters:
callbackInfo- Thecallback infothat is used to store data between middlewares.exchange- The exchange holding the data of the websocket session.frame- The frame which was received.
-
handleMessageSent
default void handleMessageSent(MiddlewareCallbackInfo callbackInfo, SocketExchange exchange, Frame frame) Defines middleware logic when the server sends a new message to the websocket client.Note: The middleware logic is applied after the
OutgoingSocketMessageEventand before the actual message sending of the websocket client.- Parameters:
callbackInfo- Thecallback infothat is used to store data between middlewares.exchange- The exchange holding the data of the websocket session.frame- The frame which was sent.
-
handle
Defines the logic of the middleware.- Specified by:
handlein interfaceMiddleware- Parameters:
callbackInfo- Thecallback infothat is used to store data between middlewares.exchange- Theexchangethat holds the data of the request.
-
isApplicable
Checks if themiddlewareis applicable of handling the specificserversexchange.This implementation checks if the server is a
websocket server.- Specified by:
isApplicablein interfaceMiddleware- Parameters:
server- Theserverto check.- Returns:
trueif the middleware can handle the server,falseotherwise.
-