Class RPCService
Functions to execute registered procedures, either locally or through a remote endpoint.
public abstract class RPCService
- Inheritance
-
RPCService
- Inherited Members
Fields
Logger
protected readonly ILogger<RPCService> Logger
Field Value
Security
protected readonly SecurityService Security
Field Value
Properties
HasEndpoint
public abstract bool HasEndpoint { get; }
Property Value
Methods
ExecuteAsync<TRequest, TResponse>(AnonymousProcedure<TRequest, TResponse>, TRequest, CancellationToken?)
Execute a registered procedure, either locally or via a remote IEndpoint.
public abstract Task<TResponse> ExecuteAsync<TRequest, TResponse>(AnonymousProcedure<TRequest, TResponse> proc, TRequest request, CancellationToken? cancellationToken = null) where TRequest : notnull
Parameters
procAnonymousProcedure<TRequest, TResponse>requestTRequestcancellationTokenCancellationToken?
Returns
- Task<TResponse>
Type Parameters
TRequestTResponse
ExecuteAsync<TRequest, TResponse>(Procedure<TRequest, TResponse>, TRequest, CancellationToken)
Execute a registered procedure, either locally or via a remote IEndpoint.
public Task<TResponse> ExecuteAsync<TRequest, TResponse>(Procedure<TRequest, TResponse> proc, TRequest request, CancellationToken cancellationToken) where TRequest : notnull
Parameters
procProcedure<TRequest, TResponse>requestTRequestcancellationTokenCancellationToken
Returns
- Task<TResponse>
Type Parameters
TRequestTResponse
ExecuteAsync<TRequest, TResponse>(Procedure<TRequest, TResponse>, TRequest, IPrincipal?, CancellationToken?)
Execute a registered procedure, either locally or via a remote IEndpoint.
public abstract Task<TResponse> ExecuteAsync<TRequest, TResponse>(Procedure<TRequest, TResponse> proc, TRequest request, IPrincipal? principal = null, CancellationToken? cancellationToken = null) where TRequest : notnull
Parameters
procProcedure<TRequest, TResponse>requestTRequestprincipalIPrincipalcancellationTokenCancellationToken?
Returns
- Task<TResponse>
Type Parameters
TRequestTResponse
ResetSessionAsync(IPrincipal)
Clear out any session state belonging to the identity of this principal.
public virtual Task ResetSessionAsync(IPrincipal principal)
Parameters
principalIPrincipal
Returns
TryGetProcedure(string, out Procedure)
public bool TryGetProcedure(string name, out Procedure proc)