json_rpc/clients/socketclient

Source   Edit  

Types

RpcSocketClient = ref object of RpcConnection
  transport*: StreamTransport
  loop*: Future[void]
  framing*: Framing
StreamTransport-based bidirectional connection with pluggable framing options for delineating messages. Source   Edit  

Procs

proc attach(client: RpcSocketClient; transport: StreamTransport; remote: string): InternalRaisesFuture[
    void, void] {....stackTrace: false, raises: [], gcsafe, raises: [], gcsafe,
                  tags: [RootEffect], forbids: [].}
Source   Edit  
proc connect(client: RpcSocketClient; address: string; port: Port): InternalRaisesFuture[
    void, (CancelledError, JsonRpcError)] {....stackTrace: false, raises: [],
    gcsafe, raises: [], gcsafe, tags: [RootEffect], forbids: [].}
Source   Edit  
proc connect(client: RpcSocketClient; address: TransportAddress): InternalRaisesFuture[
    void, (CancelledError, JsonRpcError)] {....stackTrace: false, raises: [],
    gcsafe, raises: [], gcsafe, tags: [RootEffect], forbids: [].}
Source   Edit  
proc new(T: type RpcSocketClient; maxMessageSize = defaultMaxMessageSize;
         router = default(ref RpcRouter); framing = Framing.newLine()): T:type {.
    ...raises: [], gcsafe.}
Source   Edit  
proc new(T: type RpcSocketClient; maxMessageSize = defaultMaxMessageSize;
         router = default(RpcRouterCallback); framing = Framing.newLine()): T:type {.
    ...raises: [], gcsafe.}
Source   Edit  
proc newRpcSocketClient(maxMessageSize = defaultMaxMessageSize;
                        router = default(ref RpcRouter);
                        framing = Framing.newLine()): RpcSocketClient {.
    ...raises: [], gcsafe, tags: [], forbids: [].}
Creates a new client instance. Source   Edit  

Methods

method close(client: RpcSocketClient): InternalRaisesFuture[void, void] {.
    ...stackTrace: false, raises: [], gcsafe, raises: [], gcsafe,
    tags: [RootEffect], forbids: [].}
Source   Edit  
method send(client: RpcSocketClient; reqData: seq[byte]): InternalRaisesFuture[
    void, (CancelledError, JsonRpcError)] {....stackTrace: false, raises: [],
    gcsafe, raises: [], gcsafe, tags: [RootEffect], forbids: [].}
Source   Edit  

Exports

flavorUsesAutomaticObjectSerialization, ResponseBatchRx, RpcBatchCallRef, InvalidResponse, RpcBatchResponse, RequestTx, GetJsonRpcRequestHeaders, createRpcSigsFromString, ApplicationError, prepareBatch, flavorEnumRep, new, ParamsMismatchError, mimeType, call, clearPending, RpcInvalidParamsError, json_rpc_workaround_24844_future_string, RpcInvalidRequestError, createRpcSigsFromString, RpcApplicationError, flavorSkipNullFields, hash, RequestId, withPendingFut, callOnProcessMessage, flavorOmitsOptionalFields, toJsonError, processsSingleResponse, RpcMethodNotFoundError, RpcParseError, JrpcConv, RpcResponseError, automaticBuiltinSerialization, automaticPrimitivesSerialization, RpcInternalError, RpcRouterCallback, close, parseResponse, ErrorResponse, RequestParamsTx, flavorRequiresAllFields, PreferredOutputType, RpcBatchItem, createRpcSigsFromNim, FailedHttpResponse, call, createSingleRpcSig, RpcPostError, decode, Reader, flavorEnumRep, RpcServerError, typeClassOrMemberAutoSerialize, RequestParamKind, createRpcSigs, RpcClient, InvalidRequest, RpcAddressUnresolvableError, Writer, createRpcSigs, send, processMessage, ResultDecodeError, automaticSerialization, defaultMaxMessageSize, call, createSingleRpcSig, RpcOrigin, ResponseFut, createRpcSigsFromNim, flavorAllowsUnknownFields, RpcTransportError, RpcBindError, typeAutoSerialize, JsonRpcError, RequestIdKind, notify, RpcConnection, RequestDecodeError, ParamsMismatchError, RpcResponseError, RpcInvalidRequestError, RequestDecodeError, ResultDecodeError, new, RpcMethodNotFoundError, RpcInternalError, FailedHttpResponse, RpcServerError, ApplicationError, JsonRpcError, RpcParseError, RpcApplicationError, RpcOrigin, RpcTransportError, InvalidRequest, RpcAddressUnresolvableError, RpcPostError, ErrorResponse, InvalidResponse, RpcInvalidParamsError, RpcBindError, httpHeader, FramingRecvMsg, lengthHeaderBE32, init, FramingSendMsg, Framing, newLine