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

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