Table of Contents

Class WebEndpoint

Namespace
The.RPC
Assembly
Instagile.dll

Implementation of IEndpoint which passes the serialised operations over HTTP

public sealed class WebEndpoint : IEndpoint
Inheritance
WebEndpoint
Implements
Inherited Members

Constructors

WebEndpoint(IEnumerable<Procedure>?)

public WebEndpoint(IEnumerable<Procedure>? rpcs = null)

Parameters

rpcs IEnumerable<Procedure>

WebEndpoint(IHttpClientFactory, IEnumerable<Procedure>?)

public WebEndpoint(IHttpClientFactory clientFactory, IEnumerable<Procedure>? rpcs = null)

Parameters

clientFactory IHttpClientFactory
rpcs IEnumerable<Procedure>

WebEndpoint(IHttpClientFactory, string, IEnumerable<Procedure>?)

public WebEndpoint(IHttpClientFactory clientFactory, string address, IEnumerable<Procedure>? rpcs = null)

Parameters

clientFactory IHttpClientFactory
address string
rpcs IEnumerable<Procedure>

WebEndpoint(IHttpClientFactory, Uri, IEnumerable<Procedure>?)

public WebEndpoint(IHttpClientFactory clientFactory, Uri address, IEnumerable<Procedure>? rpcs = null)

Parameters

clientFactory IHttpClientFactory
address Uri
rpcs IEnumerable<Procedure>

WebEndpoint(string, IEnumerable<Procedure>?)

public WebEndpoint(string address, IEnumerable<Procedure>? rpcs = null)

Parameters

address string
rpcs IEnumerable<Procedure>

WebEndpoint(Uri, IEnumerable<Procedure>?)

public WebEndpoint(Uri address, IEnumerable<Procedure>? rpcs = null)

Parameters

address Uri
rpcs IEnumerable<Procedure>

Fields

DefaultAddress

public static readonly string DefaultAddress

Field Value

string

Properties

Description

Human-readable name.

public string Description { get; }

Property Value

string

Methods

ConnectAsync(byte[], CancellationToken)

Proves the client's identity to the server in exchange for a symmetric session key.

public Task<byte[]> ConnectAsync(byte[] ticket, CancellationToken cancellationToken)

Parameters

ticket byte[]
cancellationToken CancellationToken

Returns

Task<byte[]>

Serialised Response<T>.

DefaultHttpConfig(HttpClient)

public static void DefaultHttpConfig(HttpClient client)

Parameters

client HttpClient

ExecuteAsync(string, Message, byte[]?, CancellationToken)

Calls an untyped procedure - this may involve local lookup, passthrough or decoration.

public Task<Message> ExecuteAsync(string name, Message request, byte[]? ticket, CancellationToken cancellationToken)

Parameters

name string
request Message
ticket byte[]
cancellationToken CancellationToken

Returns

Task<Message>

PostAsync<TResponse>(string, CancellationToken, params (string, HttpContent)?[])

public Task<Message> PostAsync<TResponse>(string path, CancellationToken cancellationToken, params (string, HttpContent)?[] arguments)

Parameters

path string
cancellationToken CancellationToken
arguments (string, HttpContent)?[]

Returns

Task<Message>

Type Parameters

TResponse

VisitAsync<T, U>(AnonymousProcedure<T, U>, Message, CancellationToken)

Calls a typed procedure on a local or remote host.

public Task<Message> VisitAsync<T, U>(AnonymousProcedure<T, U> proc, Message request, CancellationToken cancellationToken) where T : notnull

Parameters

proc AnonymousProcedure<T, U>
request Message
cancellationToken CancellationToken

Returns

Task<Message>

Serialised Response<T>.

Type Parameters

T
U

VisitAsync<T, U>(Procedure<T, U>, Message, byte[], CancellationToken)

Calls a typed procedure on a local or remote host.

public Task<Message> VisitAsync<T, U>(Procedure<T, U> proc, Message request, byte[] ticket, CancellationToken cancellationToken) where T : notnull

Parameters

proc Procedure<T, U>
request Message
ticket byte[]
cancellationToken CancellationToken

Returns

Task<Message>

Serialised Response<T>.

Type Parameters

T
U