Class GrpcClient
- Namespace
- IdeaStatiCa.Plugin.Grpc
- Assembly
- IdeaStatiCa.Plugin.dll
Client implementation for the Grpc connection.
public class GrpcClient : IGrpcClient, IGrpcCommunicator, IGrpcService, IGrpcSender
Inheritance
Derived
Implements
Inherited Members
Constructors
GrpcClient(IPluginLogger, int)
Initializes the IdeaStatiCa Grpc client.
public GrpcClient(IPluginLogger logger, int maxDataLength = 104857600)
Parameters
logger
IPluginLogger-
The instance of the pluginLogger
maxDataLength
int-
The maximal size of GrpcMessage.data in grpc message
Fields
Logger
protected readonly IPluginLogger Logger
Field Value
- IPluginLogger
Properties
ClientID
ID of the client. Typically the PID of the plugins process.
public string ClientID { get; }
Property Value
Host
The host
public string Host { get; }
Property Value
IsConnected
Determines whether client is connected.
public bool IsConnected { get; }
Property Value
Port
Port on which the server will communicate.
public int Port { get; }
Property Value
Methods
ConnectAsync(IAsyncStreamReader<GrpcMessage>, IServerStreamWriter<GrpcMessage>, ServerCallContext)
public Task ConnectAsync(IAsyncStreamReader<GrpcMessage> requestStream, IServerStreamWriter<GrpcMessage> responseStream, ServerCallContext context)
Parameters
requestStream
IAsyncStreamReader<GrpcMessage>responseStream
IServerStreamWriter<GrpcMessage>context
ServerCallContext
Returns
RegisterHandler(string, IGrpcMessageHandler)
Registers a message handler.
public void RegisterHandler(string handlerId, IGrpcMessageHandler handler)
Parameters
handlerId
string-
UniqueID of the handler.
handler
IGrpcMessageHandler-
Handler implementation.
SendMessageAsync(GrpcMessage)
Sends a message to the server.
public Task SendMessageAsync(GrpcMessage message)
Parameters
message
GrpcMessage-
Grpc message to send.
Returns
StartAsync(string, int)
Connects to the server and starts listen to responses.
public Task StartAsync(string clientId, int port)
Parameters
Returns
StopAsync()
Disconnets client from the server.
public Task StopAsync()
Returns
ClientConnected
Triggered every time client connects. Sends a client ID in args.
public event EventHandler ClientConnected
Event Type
ClientDisconnected
Triggered when client has disconnected. Sends a client ID in args.
public event EventHandler ClientDisconnected