WebSocketServerSession

Represents a server-side web socket session

Inheritors

Properties

Link copied to clipboard

An application that started this web socket session

Link copied to clipboard
abstract val call: ApplicationCall

Associated received call that originating this session

Link copied to clipboard

Converter for web socket session

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
abstract val incoming: ReceiveChannel<Frame>
Link copied to clipboard
abstract var masking: Boolean
Link copied to clipboard
abstract var maxFrameSize: Long
Link copied to clipboard
abstract val outgoing: SendChannel<Frame>

Functions

Link copied to clipboard
abstract suspend fun flush()
Link copied to clipboard

Dequeues a frame and deserializes it to the type T using WebSocket content converter. May throw an exception WebsocketDeserializeException if the converter can't deserialize frame data to type T. May throw WebsocketDeserializeException if the received frame type is not Frame.Text or Frame.Binary. In this case, WebsocketDeserializeException.frame contains the received frame. May throw ClosedReceiveChannelException if a channel was closed

Link copied to clipboard
open suspend fun send(frame: Frame)
Link copied to clipboard
inline suspend fun <T> WebSocketServerSession.sendSerialized(data: T)
suspend fun WebSocketServerSession.sendSerialized(data: Any?, typeInfo: TypeInfo)

Serializes data to a frame and enqueues this frame. May suspend if the outgoing queue is full. If the outgoing channel is already closed, throws an exception, so it is impossible to transfer any message. Frames sent after a Close frame are silently ignored. Note that a Close frame could be sent automatically in reply to a peer's Close frame unless it is a raw WebSocket session.

Link copied to clipboard
abstract fun terminate()