Class JsonRpcJsonChannel
- Namespace
- Nerdbank.JsonRpc
- Assembly
- Nerdbank.JsonRpc.dll
Encodes JSON-RPC messages as UTF-8 JSON with explicit framing.
public sealed class JsonRpcJsonChannel : JsonRpcPipeChannel, IAsyncDisposable
- Inheritance
-
JsonRpcJsonChannel
- Implements
- Inherited Members
Constructors
JsonRpcJsonChannel(IDuplexPipe, JsonSerializer, JsonRpcJsonFraming)
Initializes a new instance of the JsonRpcJsonChannel class.
public JsonRpcJsonChannel(IDuplexPipe pipe, JsonSerializer serializer, JsonRpcJsonFraming framing)
Parameters
pipeIDuplexPipeThe connected pipe.
serializerJsonSerializerThe configured serializer used for JSON application values by default.
framingJsonRpcJsonFramingThe wire framing convention.
JsonRpcJsonChannel(IDuplexPipe, JsonSerializerPlugin, JsonRpcJsonFraming, int?, int?)
Initializes a new instance of the JsonRpcJsonChannel class.
public JsonRpcJsonChannel(IDuplexPipe pipe, JsonSerializerPlugin serializer, JsonRpcJsonFraming framing, int? inboundCapacity = 100, int? outboundCapacity = null)
Parameters
pipeIDuplexPipeThe connected pipe.
serializerJsonSerializerPluginThe plugin used for JSON application values by default.
framingJsonRpcJsonFramingThe wire framing convention.
inboundCapacityint?The inbound queue limit.
outboundCapacityint?The outbound queue limit.
Properties
Encoding
Gets the encoding used by this transport.
public override JsonRpcEncoding Encoding { get; }
Property Value
Serializer
Gets the serializer selected by this channel for application values.
public override JsonRpcSerializer Serializer { get; }
Property Value
Methods
ReceiveMessagesAsync(PipeReader, CancellationToken)
protected override IAsyncEnumerable<JsonRpcMessage> ReceiveMessagesAsync(PipeReader reader, CancellationToken cancellationToken)
Parameters
readerPipeReadercancellationTokenCancellationToken
Returns
SendMessageAsync(PipeWriter, JsonRpcMessage, CancellationToken)
protected override ValueTask SendMessageAsync(PipeWriter writer, JsonRpcMessage message, CancellationToken cancellationToken)
Parameters
writerPipeWritermessageJsonRpcMessagecancellationTokenCancellationToken