KrpcRoute

class KrpcRoute(webSocketSession: DefaultWebSocketServerSession) : DefaultWebSocketServerSession(source)

KrpcRoute class represents an RPC server mounted in Ktor routing. This class provides an API to register services and optionally setup configuration.

Constructors

Link copied to clipboard
constructor(webSocketSession: DefaultWebSocketServerSession)

Properties

Link copied to clipboard
open override val call: ApplicationCall
Link copied to clipboard
open override val closeReason: Deferred<CloseReason?>
Link copied to clipboard
Link copied to clipboard
open override val extensions: List<WebSocketExtension<*>>
Link copied to clipboard
open override val incoming: ReceiveChannel<Frame>
Link copied to clipboard
open override var masking: Boolean
Link copied to clipboard
open override var maxFrameSize: Long
Link copied to clipboard
open override val outgoing: SendChannel<Frame>
Link copied to clipboard
open override var pingIntervalMillis: Long
Link copied to clipboard
open override var timeoutMillis: Long

Functions

Link copied to clipboard
open suspend override fun flush()
Link copied to clipboard
inline fun <Service : Any> registerService(noinline serviceFactory: () -> Service)
fun <Service : Any> registerService(serviceKClass: KClass<Service>, serviceFactory: () -> Service)

Registers new service to the server. Server will route all designated messages to it. Service of any type should be unique on the server, but RpcServer does not specify the actual retention policy.

Link copied to clipboard
fun rpcConfig(configBuilder: KrpcConfigBuilder.Server.() -> Unit)

Optionally configures the declared RPC server. Overrides Krpc plugin configuration.

Link copied to clipboard
open suspend override fun send(frame: Frame)
Link copied to clipboard
open override fun start(negotiatedExtensions: List<WebSocketExtension<*>>)
Link copied to clipboard
open override fun terminate()