in src/RequestProcessor.cs [76:98]
internal async Task ProcessRequestLoop()
{
StreamingMessage request, response;
while (await _msgStream.MoveNext())
{
request = _msgStream.GetCurrentMessage();
if (_requestHandlers.TryGetValue(request.ContentCase, out Func<StreamingMessage, StreamingMessage> requestFunc))
{
response = requestFunc(request);
}
else
{
RpcLogger.WriteSystemLog(LogLevel.Warning, string.Format(PowerShellWorkerStrings.UnsupportedMessage, request.ContentCase));
continue;
}
if (response != null)
{
_msgStream.Write(response);
}
}
}