json_rpc/servers/websocketserver

Search:
Group by:
Source   Edit  

Types

RpcWebSocketHandler = ref object of RpcServer
  wsserver*: WSServer
  maxMessageSize*: int
Source   Edit  
WsAuthHook = proc (request: HttpRequest): Future[bool] {.
    async: (...raises: [CatchableError]).}
Source   Edit  

Procs

proc close(server: RpcWebSocketServer) {....raises: [], gcsafe, tags: [],
    forbids: [].}
Cleanup resources of RPC server. Source   Edit  
proc closeWait(server: RpcWebSocketServer): InternalRaisesFuture[void, void] {.
    ...stackTrace: false, raises: [], gcsafe, raises: [], gcsafe,
    tags: [RootEffect], forbids: [].}
Cleanup resources of RPC server. Source   Edit  
proc localAddress(server: RpcWebSocketServer): TransportAddress {....raises: [],
    gcsafe, tags: [], forbids: [].}
Source   Edit  
proc newRpcWebSocketServer(address: TransportAddress; compression: bool = false;
                           flags: set[ServerFlags] = {TcpNoDelay, ReuseAddr};
                           authHooks: seq[WsAuthHook] = @[];
                           rng = HmacDrbgContext.new();
                           maxMessageSize = defaultMaxMessageSize): RpcWebSocketServer {.
    ...raises: [JsonRpcError], raises: [], gcsafe, tags: [], forbids: [].}
Source   Edit  
proc newRpcWebSocketServer(address: TransportAddress;
                           tlsPrivateKey: TLSPrivateKey;
                           tlsCertificate: TLSCertificate;
                           compression: bool = false;
                           flags: set[ServerFlags] = {TcpNoDelay, ReuseAddr};
                           tlsFlags: set[TLSFlags] = {};
                           tlsMinVersion = TLSVersion.TLS12;
                           tlsMaxVersion = TLSVersion.TLS12;
                           authHooks: seq[WsAuthHook] = @[];
                           rng = HmacDrbgContext.new();
                           maxMessageSize = defaultMaxMessageSize): RpcWebSocketServer {.
    ...raises: [JsonRpcError], raises: [], gcsafe, tags: [], forbids: [].}
Source   Edit  
proc newRpcWebSocketServer(host: string; port: Port; compression: bool = false;
                           flags: set[ServerFlags] = {TcpNoDelay, ReuseAddr};
                           authHooks: seq[WsAuthHook] = @[];
                           rng = HmacDrbgContext.new();
                           maxMessageSize = defaultMaxMessageSize): RpcWebSocketServer {.
    ...raises: [JsonRpcError], raises: [], gcsafe, tags: [], forbids: [].}
Source   Edit  
proc newRpcWebSocketServer(host: string; port: Port;
                           tlsPrivateKey: TLSPrivateKey;
                           tlsCertificate: TLSCertificate;
                           compression: bool = false;
                           flags: set[ServerFlags] = {TcpNoDelay, ReuseAddr};
                           tlsFlags: set[TLSFlags] = {};
                           tlsMinVersion = TLSVersion.TLS12;
                           tlsMaxVersion = TLSVersion.TLS12;
                           authHooks: seq[WsAuthHook] = @[];
                           rng = HmacDrbgContext.new()): RpcWebSocketServer {.
    ...raises: [JsonRpcError], raises: [], gcsafe, tags: [], forbids: [].}
Source   Edit  
proc serveHTTP(rpc: RpcWebSocketHandler; request: HttpRequest): InternalRaisesFuture[
    void, (CancelledError,)] {....stackTrace: false, raises: [], gcsafe,
                               raises: [], gcsafe, tags: [RootEffect],
                               forbids: [].}
Source   Edit  
proc start(server: RpcWebSocketServer) {....raises: [JsonRpcError], raises: [],
    gcsafe, tags: [RootEffect, WriteIOEffect], forbids: [].}
Start the RPC server. Source   Edit  
proc stop(server: RpcWebSocketServer) {....raises: [], gcsafe,
                                        tags: [RootEffect, WriteIOEffect],
                                        forbids: [].}
Stop the RPC server. Source   Edit  

Exports

JsonRpcError, RpcAddressUnresolvableError, RpcPostError, FailedHttpResponse, ApplicationError, ErrorResponse, InvalidResponse, RequestDecodeError, RpcTransportError, RpcBindError, InvalidRequest, automaticBuiltinSerialization, METHOD_NOT_FOUND, call, json_rpc_workaround_24844_future_string, hash, flavorSkipNullFields, ResponseRx, readValue, RpcRouter, ==, writeRequest, readValue, RpcServer, mimeType, JrpcSys, writeValue, call, processsSingleResponse, new, rpc, flavorRequiresAllFields, automaticPrimitivesSerialization, ResponseError, RpcBatchResponse, createRpcSigsFromNim, hash, call, typeAutoSerialize, flavorEnumRep, executeMethod, RequestTx, prepareBatch, withPendingFut, executeMethod, JSON_PARSE_ERROR, ResponseRx2, decode, RpcBatchItem, createSingleRpcSig, readValue, INTERNAL_ERROR, flavorOmitsOptionalFields, readValue, flavorOmitsOptionalFields, readValue, automaticSerialization, wrapError, typeClassOrMemberAutoSerialize, GetJsonRpcRequestHeaders, route, automaticBuiltinSerialization, RequestParamsTx, Reader, send, Writer, RequestParamKind, RequestId, RpcClient, ResponseKind, createRpcSigsFromNim, defaultMaxMessageSize, ParamDescRx, RequestRx2, flavorAllowsUnknownFields, JrpcConv, writeValue, ResponseFut, typeAutoSerialize, executeMethod, Writer, writeValue, hasMethod, createRpcSigsFromString, close, RequestParamsRx, RpcRouterCallback, rpc, flavorRequiresAllFields, notify, decode, readValue, PreferredOutputType, $, createSingleRpcSig, mimeType, flavorEnumRep, clear, readValue, callBatch, clearPending, route, ParamDescNamed, processMessage, writeValue, flavorSkipNullFields, ResponseTx, hasMethod, writeNotification, readValue, PreferredOutputType, register, readValue, RpcBatchCallRef, unRegisterAll, JsonRPC2, flavorUsesAutomaticObjectSerialization, flavorEnumRep, shouldWriteObjectField, writeValue, flavorUsesAutomaticObjectSerialization, Reader, createRpcSigsFromString, flavorEnumRep, createRpcSigs, callOnProcessMessage, readValue, rpc, automaticSerialization, writeValue, ReqRespHeader, executeMethod, automaticPrimitivesSerialization, meth, notify, route, INVALID_PARAMS, INVALID_REQUEST, RequestRx, createRpcSigs, toTx, RequestIdKind, typeClassOrMemberAutoSerialize, rpc, RpcProc, ReBatchKind, register, readValue, writeValue, withWriter, route, flavorAllowsUnknownFields, RequestBatchRx, rpc, init, isFieldExpected, SERVER_ERROR, JSON_ENCODE_ERROR, RpcConnection, route, rpc