GraphQLWsProtocol

An WsProtocol that uses https://github.com/enisdenjo/graphql-ws/blob/master/PROTOCOL.md It can carry queries in addition to subscriptions over the websocket

Constructors

Link copied to clipboard
constructor(connectionPayload: suspend () -> Map<String, Any?>? = { null }, pingPayload: Map<String, Any?>? = null, pongPayload: Map<String, Any?>? = null, connectionAcknowledgeTimeoutMs: Long, pingIntervalMillis: Long, frameType: WsFrameType, webSocketConnection: WebSocketConnection, listener: WsProtocol.Listener, scope: CoroutineScope)

Types

Link copied to clipboard

Functions

Link copied to clipboard
open fun close()

Closes the connection gracefully. It is expected that a future call to WsProtocol.Listener.networkError is made

Link copied to clipboard
open suspend override fun connectionInit()

Initializes the connection and suspends until the server acknowledges it.

Link copied to clipboard
open override fun handleServerMessage(messageMap: Map<String, Any?>)

Handles a server message and notifies listener appropriately

Link copied to clipboard
open suspend override fun run()

Read the WebSocket

Link copied to clipboard
open override fun <D : Operation.Data> startOperation(request: ApolloRequest<D>)

Starts the given operation

Link copied to clipboard
open override fun <D : Operation.Data> stopOperation(request: ApolloRequest<D>)

Stops the given operation