private void ProcessCommand(InCommand command)
{
try
{
foreach (var interceptor in _inputInterceptors)
{
interceptor(command);
}
var consumer = _inputConsumers.First();
consumer.TryConsume(command, new InputCommandConsumerScope(() => _inputConsumers.Remove(consumer)));
}
catch (Exception ex)
{
Console.WriteLine(ex);
}
}