public static ProcessResults RemoveProjectConfig(string id, Action <ProcessTrace, StepNotificationState> onNotificationStateChanged)
 {
     lock (_processSyncLock)
     {
         return(_projectConfigsAPI.RemoveProjectConfig(id, onNotificationStateChanged));
     }
 }
        public override Command Create()
        {
            Command command = new Command("remove")
            {
                _idOption,
            };

            command.Description = CLITextResources.RemoveCommandDescription;

            command.Handler = CommandHandler
                              .Create <string>((id) =>
            {
                _consoleProcessMessages.StartProcessMessage("remove", id);

                _consoleProcessMessages.StartSpiiner();
                ProcessResults processResults = _projectConfigsAPI.RemoveProjectConfig(id, _consoleProcessMessages.OnNotificationStateChanged);
                _consoleProcessMessages.StopSpinner();

                _consoleProcessMessages.ProcessComplete(processResults);
            });

            return(command);
        }