Class RpcClientFactory
Creates remote API connections.
Inheritance
Solti.Utils.Primitives.Patterns.Disposable
RpcClientFactory
Implements
Solti.Utils.Primitives.Patterns.IDisposableEx
Inherited Members
Solti.Utils.Primitives.Patterns.Disposable.AsyncDispose()
Solti.Utils.Primitives.Patterns.Disposable.BeforeDispose()
Solti.Utils.Primitives.Patterns.Disposable.CheckNotDisposed()
Solti.Utils.Primitives.Patterns.Disposable.Dispose()
Solti.Utils.Primitives.Patterns.Disposable.DisposeAsync()
Solti.Utils.Primitives.Patterns.Disposable.Disposed
Assembly: Solti.Utils.Rpc.Client.dll
Syntax
public class RpcClientFactory : Disposable, IDisposableEx, IDisposable, IAsyncDisposable
Constructors
RpcClientFactory(String)
Declaration
public RpcClientFactory(string host)
Parameters
Type |
Name |
Description |
String |
host |
|
Properties
Headers sent along with each request.
Declaration
public IDictionary<string, string> CustomHeaders { get; }
Property Value
Host
The address of the remote host (e.g.: "www.mysite.com:1986/api").
Declaration
public string Host { get; }
Property Value
SerializerOptions
Declaration
public JsonSerializerOptions SerializerOptions { get; }
Property Value
ServiceVersion
The Version of the remote service we want to invoke.
Declaration
public Task<Version> ServiceVersion { get; }
Property Value
SessionId
The (optional) session ID related to this instance.
Declaration
public string SessionId { get; set; }
Property Value
Timeout
Represents the request timeout.
Declaration
public TimeSpan Timeout { get; set; }
Property Value
Methods
CreateClient<TInterface>()
Creates a new RPC client against the given service TInterface
.
Declaration
public async Task<TInterface> CreateClient<TInterface>()
where TInterface : class
Returns
Type |
Description |
Task<TInterface> |
|
Type Parameters
Name |
Description |
TInterface |
|
Dispose(Boolean)
Declaration
protected override void Dispose(bool disposeManaged)
Parameters
Type |
Name |
Description |
Boolean |
disposeManaged |
|
Overrides
Solti.Utils.Primitives.Patterns.Disposable.Dispose(System.Boolean)
GetMemberId(MemberInfo)
Declaration
protected virtual string GetMemberId(MemberInfo member)
Parameters
Returns
GetRequestParameters(MethodInfo)
Gets the request parameters.
Declaration
protected virtual IDictionary<string, string> GetRequestParameters(MethodInfo method)
Parameters
Returns
InvokeService(MethodInfo, Object[])
Does the actual remote module invocation.
Declaration
protected virtual object InvokeService(MethodInfo method, object[] args)
Parameters
Returns
InvokeServiceAsync(MethodInfo, Object[])
Does the actual remote module invocation.
Declaration
protected virtual async Task<object> InvokeServiceAsync(MethodInfo method, object[] args)
Parameters
Returns
ProcessRemoteError(ExceptionInfo)
Declaration
protected virtual void ProcessRemoteError(ExceptionInfo info)
Parameters
Implements
Solti.Utils.Primitives.Patterns.IDisposableEx