WebSocketExtension

interface WebSocketExtension<ConfigType : Any>

WebSocket extension instance. This instance is created for each WebSocket request, for every installed extension by WebSocketExtensionFactory.

Functions

Link copied to clipboard
abstract fun clientNegotiation(negotiatedProtocols: List<WebSocketExtensionHeader>): Boolean

This method is called only for a client, when it receives the WebSocket upgrade response.

Link copied to clipboard
abstract fun processIncomingFrame(frame: Frame): Frame

This method is called on each incoming frame before handling it in WebSocket session.

Link copied to clipboard
abstract fun processOutgoingFrame(frame: Frame): Frame

This method is called on each outgoing frame and handle it before sending.

Link copied to clipboard
abstract fun serverNegotiation(requestedProtocols: List<WebSocketExtensionHeader>): List<WebSocketExtensionHeader>

This method is called only for a server, when it receives websocket session.

Properties

Link copied to clipboard
abstract val factory: WebSocketExtensionFactory<ConfigType, out WebSocketExtension<ConfigType>>

Reference to the WebSocketExtensionFactory, which produced this extension.

Link copied to clipboard
abstract val protocols: List<WebSocketExtensionHeader>

List of WebSocket extension protocols which will be sent by client in headers. They are required to inform server that client wants to negotiate current extension.

Inheritors

Link copied to clipboard