private void StartReading()
{
Task.Run(async () =>
{
var connectionId = ConnectionId;
try
{
var reader = new StreamReader(ActiveConnection.GetStream());
while (IsOnline && connectionId == ConnectionId)
{
var message = await reader.ReadLineAsync();
if (message == null) break;
Logger.Trace($">> {message}");
if (!ClientReadProxy.ProcessRequest(message).Invoked)
{
ServerReceivedInvalidMessage(InvalidMessage.For(message));
}
}
}
catch (Exception exception)
{
Logger.Warn($"[READ] Disconnected. Reason: {exception.Message}");
OnTcpClientDisconnected(connectionId);
}
});
}