コード例 #1
0
        public ExecuteResultEnum Update(IProjectUpdateCommandOptions options)
        {
            var displayName  = options.DisplayName;
            var projectIndex = FindIndexByName(displayName);

            if (projectIndex < 0)
            {
                _reportService.Error($"Cant find project '{displayName}'");
                return(ExecuteResultEnum.Error);
            }

            var path = options.Path;

            if (!string.IsNullOrEmpty(path))
            {
                path = CreateConfigFilePath(path);
            }

            var newDisplayName = options.NewDisplayName;

            if (!string.IsNullOrEmpty(newDisplayName))
            {
                if (IsDisplayNameAlreadyUsed(newDisplayName, options))
                {
                    return(ExecuteResultEnum.Error);
                }
            }

            if (!string.IsNullOrEmpty(newDisplayName))
            {
                _globalConfigFile.Config.Projects[projectIndex].DisplayName = newDisplayName;
            }

            if (!string.IsNullOrEmpty(path))
            {
                _globalConfigFile.Config.Projects[projectIndex].ConfigFile = path;
            }

            _globalConfigFile.Save(_globalConfigFile.Config);

            _reportService.Output($"Project '{newDisplayName ?? displayName}' updated.");
            return(ExecuteResultEnum.Succeeded);
        }
コード例 #2
0
 public ProjectUpdateCommandOptions(IProjectUpdateCommandOptions options)
     : base(options)
 {
     _options = options;
 }