public void Execute(LauncherCommand command)
        {
            if (!(command is TCommand))
            {
                throw new NotSupportedException($"Invalid command type [{command.GetType().FullName}] given to CommandLauncher plugin [{GetType().FullName}]");
            }

            DoExecute((TCommand)command);
        }
 public bool CanProcess(LauncherCommand command)
 {
     return(command is TCommand);
 }