Compartilhar via


JsonRpc Classe

Definição

Gerencia uma conexão JSON-RPC com outra entidade em um Stream.

public class JsonRpc : IDisposable, Microsoft.IDisposableObservable
public class JsonRpc : IDisposable, Microsoft.IDisposableObservable, StreamJsonRpc.Reflection.IJsonRpcFormatterCallbacks, StreamJsonRpc.Reflection.IJsonRpcTracingCallbacks
type JsonRpc = class
    interface IDisposableObservable
    interface IDisposable
type JsonRpc = class
    interface IDisposableObservable
    interface IDisposable
    interface IJsonRpcFormatterCallbacks
    interface IJsonRpcTracingCallbacks
Public Class JsonRpc
Implements IDisposable, IDisposableObservable
Public Class JsonRpc
Implements IDisposable, IDisposableObservable, IJsonRpcFormatterCallbacks, IJsonRpcTracingCallbacks
Herança
JsonRpc
Implementações

Construtores

JsonRpc(DelimitedMessageHandler, Object)

Inicializa uma nova instância da classe JsonRpc.

JsonRpc(IJsonRpcMessageHandler)

Inicializa uma nova instância da classe JsonRpc.

JsonRpc(IJsonRpcMessageHandler, Object)

Inicializa uma nova instância da classe JsonRpc.

JsonRpc(Stream)

Inicializa uma nova instância da JsonRpc classe que usa HeaderDelimitedMessageHandler em torno de mensagens serializadas usando o JsonMessageFormatter.

JsonRpc(Stream, Stream, Object)

Inicializa uma nova instância da JsonRpc classe que usa HeaderDelimitedMessageHandler em torno de mensagens serializadas usando o JsonMessageFormatter.

Propriedades

ActivityTracingStrategy

Obtém ou define a estratégia para propagar IDs de atividade por RPC.

AllowModificationWhileListening

Obtém ou define um valor que indica se a configuração dessa instância pode ser alterada após StartListening() ou Attach(Stream, Object) foi chamada.

CancellationStrategy

Obtém ou define a estratégia de cancelamento a ser usada.

CancelLocallyInvokedMethodsWhenConnectionIsClosed

Obtém ou define um valor que indica se todos os métodos enviados localmente aceitam um CancellationToken quando a conexão com a parte remota é fechada.

Completion

Obtém um Task que é concluído quando essa instância é descartada ou quando a escuta é interrompida por erro, descarte ou fechamento do fluxo.

DispatchCompletion

Obtém um Task que é concluído quando nenhum método de destino local está sendo executado de uma chamada RPC.

Encoding

Obtém ou define a codificação a ser usada para mensagens JSON transmitidas.

ExceptionStrategy

Obtém ou define um valor que indica se as exceções geradas pelo servidor RPC devem ser totalmente serializadas para o cliente RPC desserializar.

IsDisposed

Gerencia uma conexão JSON-RPC com outra entidade em um Stream.

JsonSerializer

Obtém o JsonSerializer usado ao serializar e desserializar argumentos de método e retornar valores.

JsonSerializerFormatting

Obtém ou define a formatação a ser usada ao serializar mensagens JSON-RPC.

MessageHandler

Obtém o manipulador de mensagens usado para enviar e receber mensagens.

SynchronizationContext

Obtém ou define o SynchronizationContext a ser usado ao invocar métodos solicitados pela parte remota.

TraceSource

Obtém ou define o TraceSource usado para rastrear mensagens e eventos JSON-RPC.

Métodos

AddLocalRpcMethod(MethodInfo, Object, JsonRpcMethodAttribute)

Adiciona um manipulador para um método RPC com um determinado nome.

AddLocalRpcMethod(String, Delegate)

Adiciona um manipulador para um método RPC com um determinado nome.

AddLocalRpcMethod(String, MethodInfo, Object)

Adiciona um manipulador para um método RPC com um determinado nome.

AddLocalRpcTarget(Object)

Adiciona o destino especificado como possível objeto a ser invocado quando as mensagens de entrada são recebidas. O objeto de destino não deve herdar um do outro e é invocado na ordem em que são adicionados.

AddLocalRpcTarget(Object, JsonRpcTargetOptions)

Adiciona o destino especificado como possível objeto a ser invocado quando as mensagens de entrada são recebidas. O objeto de destino não deve herdar um do outro e é invocado na ordem em que são adicionados.

AddLocalRpcTarget(Type, Object, JsonRpcTargetOptions)

Gerencia uma conexão JSON-RPC com outra entidade em um Stream.

AddLocalRpcTarget<T>(T, JsonRpcTargetOptions)

Gerencia uma conexão JSON-RPC com outra entidade em um Stream.

AddRemoteRpcTarget(JsonRpc)

Adiciona uma conexão rpc remota para que as chamadas possam ser encaminhadas para o destino remoto se os destinos locais não a manipularem.

Attach(Stream, Object)

Inicializa uma nova instância da JsonRpc classe que usa HeaderDelimitedMessageHandler em torno de mensagens serializadas usando o JsonMessageFormattere começa a escutar imediatamente.

Attach(Stream, Stream, Object)

Inicializa uma nova instância da JsonRpc classe que usa HeaderDelimitedMessageHandler em torno de mensagens serializadas usando o JsonMessageFormattere começa a escutar imediatamente.

Attach(Type)

Cria um proxy de cliente JSON-RPC que está em conformidade com a interface do servidor especificada.

Attach(Type, JsonRpcProxyOptions)

Cria um proxy de cliente JSON-RPC que está em conformidade com a interface do servidor especificada.

Attach<T>()

Cria um proxy de cliente JSON-RPC que está em conformidade com a interface do servidor especificada.

Attach<T>(IJsonRpcMessageHandler)

Cria um proxy de cliente JSON-RPC que está em conformidade com a interface do servidor especificada.

Attach<T>(IJsonRpcMessageHandler, JsonRpcProxyOptions)

Cria um proxy de cliente JSON-RPC que está em conformidade com a interface do servidor especificada.

Attach<T>(JsonRpcProxyOptions)

Cria um proxy de cliente JSON-RPC que está em conformidade com a interface do servidor especificada.

Attach<T>(Stream)

Cria um proxy de cliente JSON-RPC que está em conformidade com a interface do servidor especificada.

Attach<T>(Stream, Stream)

Cria um proxy de cliente JSON-RPC que está em conformidade com a interface do servidor especificada.

CreateErrorDetails(JsonRpcRequest, Exception)

Cria o JsonRpcError.ErrorDetail a ser usado como o valor da propriedade error a ser enviada de volta ao cliente em resposta a uma exceção que está sendo gerada de um método RPC invocado localmente.

CreateExceptionFromRpcError(JsonRpcRequest, JsonRpcError)

Cria um RemoteRpcException (ou tipo derivado) que representa os dados encontrados em uma resposta de erro JSON-RPC. Isso é chamado no lado do cliente para produzir a exceção que será lançada de volta para o cliente RPC.

CreateNewRequestId()

Cria um exclusivo RequestId para uma solicitação de saída.

DispatchRequestAsync(JsonRpcRequest, TargetMethod, CancellationToken)

Invoca o método no objeto de destino RPC local e converte a resposta em uma mensagem de resultado JSON-RPC.

Dispose()

Realiza tarefas definidas pelo aplicativo associadas à liberação ou à redefinição de recursos não gerenciados.

Dispose(Boolean)

Descarta recursos gerenciados e nativos mantidos por essa instância.

GetErrorDetailsDataType(JsonRpcError)

Determina o tipo para o qual o Data objeto deve ser desserializado para uma mensagem de entrada JsonRpcError .

GetJsonRpcMethodAttribute(String, ReadOnlySpan<ParameterInfo>)

Obtém o JsonRpcMethodAttribute para um método RPC descoberto anteriormente, se houver um.

InvokeAsync(String, Object)

Invoca um determinado método em um servidor JSON-RPC.

InvokeAsync(String, Object[])

Invoca um determinado método em um servidor JSON-RPC.

InvokeAsync<TResult>(String, Object)

Invoca um determinado método em um servidor JSON-RPC.

InvokeAsync<TResult>(String, Object[])

Invoca um determinado método em um servidor JSON-RPC.

InvokeCoreAsync<TResult>(Nullable<Int32>, String, IReadOnlyList<Object>, CancellationToken)

Invoca o método RPC especificado

InvokeCoreAsync<TResult>(Nullable<Int32>, String, IReadOnlyList<Object>, CancellationToken, Boolean)

Invoca o método RPC especificado

InvokeCoreAsync<TResult>(Nullable<Int64>, String, IReadOnlyList<Object>, CancellationToken)
Obsoleto.

Invoca o método RPC especificado.

InvokeCoreAsync<TResult>(Nullable<Int64>, String, IReadOnlyList<Object>, CancellationToken, Boolean)
Obsoleto.

Invoca um determinado método em um servidor JSON-RPC.

InvokeCoreAsync<TResult>(RequestId, String, IReadOnlyList<Object>, CancellationToken)

Invoca o método RPC especificado.

InvokeCoreAsync<TResult>(RequestId, String, IReadOnlyList<Object>, CancellationToken, Boolean)

Invoca o método RPC especificado.

InvokeCoreAsync<TResult>(RequestId, String, IReadOnlyList<Object>, IReadOnlyList<Type>, IReadOnlyDictionary<String,Type>, CancellationToken, Boolean)

Invoca um determinado método em um servidor JSON-RPC.

InvokeWithCancellationAsync(String, IReadOnlyList<Object>, CancellationToken)

Invoca um determinado método em um servidor JSON-RPC.

InvokeWithCancellationAsync(String, IReadOnlyList<Object>, IReadOnlyList<Type>, CancellationToken)

Invoca um determinado método em um servidor JSON-RPC.

InvokeWithCancellationAsync<TResult>(String, IReadOnlyList<Object>, CancellationToken)

Invoca um determinado método em um servidor JSON-RPC.

InvokeWithCancellationAsync<TResult>(String, IReadOnlyList<Object>, IReadOnlyList<Type>, CancellationToken)

Invoca um determinado método em um servidor JSON-RPC.

InvokeWithParameterObjectAsync(String, Object, CancellationToken)

Invoca um determinado método em um servidor JSON-RPC.

InvokeWithParameterObjectAsync(String, Object, IReadOnlyDictionary<String,Type>, CancellationToken)

Invoca um determinado método em um servidor JSON-RPC.

InvokeWithParameterObjectAsync<TResult>(String, Object, CancellationToken)

Invoca um determinado método em um servidor JSON-RPC.

InvokeWithParameterObjectAsync<TResult>(String, Object, IReadOnlyDictionary<String,Type>, CancellationToken)

Invoca um determinado método em um servidor JSON-RPC.

IsFatalException(Exception)

Indica se a conexão deve ser fechada quando o servidor gera uma exceção.

LoadType(String, String)

Tenta carregar um tipo com base em seu nome completo e possivelmente no nome do assembly.

NotifyAsync(String, Object)

Invoca um determinado método em um servidor JSON-RPC sem aguardar sua resposta.

NotifyAsync(String, Object[])

Invoque um método no servidor e não aguarde sua conclusão, estilo fire-and-forget.

NotifyAsync(String, Object[], IReadOnlyList<Type>)

Invoca um determinado método em um servidor JSON-RPC sem aguardar sua resposta.

NotifyWithParameterObjectAsync(String, Object)

Invoque um método no servidor e não aguarde sua conclusão, estilo fire-and-forget. O parâmetro é passado como um objeto .

NotifyWithParameterObjectAsync(String, Object, IReadOnlyDictionary<String,Type>)

Invoca um determinado método em um servidor JSON-RPC sem aguardar sua resposta.

OnRequestTransmissionAborted(JsonRpcRequest)

Aciona o evento RequestTransmissionAborted.

OnResponseReceived(JsonRpcMessage)

Aciona o evento ResponseReceived.

OnResponseSent(JsonRpcMessage)

Aciona o evento ResponseSent.

StartListening()

Começa a ouvir mensagens de entrada.

Eventos

Disconnected

Gerado quando o fluxo subjacente é desconectado.

Implantações explícitas de interface

IDisposableObservable.IsDisposed

Gerencia uma conexão JSON-RPC com outra entidade em um Stream.

IJsonRpcFormatterCallbacks.RequestTransmissionAborted

Gerencia uma conexão JSON-RPC com outra entidade em um Stream.

IJsonRpcFormatterCallbacks.ResponseReceived

Gerencia uma conexão JSON-RPC com outra entidade em um Stream.

IJsonRpcFormatterCallbacks.ResponseSent

Gerencia uma conexão JSON-RPC com outra entidade em um Stream.

IJsonRpcTracingCallbacks.OnMessageDeserialized(JsonRpcMessage, Object)

Gerencia uma conexão JSON-RPC com outra entidade em um Stream.

IJsonRpcTracingCallbacks.OnMessageSerialized(JsonRpcMessage, Object)

Gerencia uma conexão JSON-RPC com outra entidade em um Stream.

Aplica-se a