private static async Task Main(string[] args)
        {
            Output.WriteHeader();

            _cmdAllowedArgs = CmdAllowedArgsFactory.CreateCmdAllowedArgs();

            var cmdArgInfo = new CmdArgInfo(args, _cmdAllowedArgs);

            CmdArg searchTermArg = cmdArgInfo.GetArgument('s');
            CmdArg packageIdCsv  = cmdArgInfo.GetArgument('i');

            if (searchTermArg != null)
            {
                await SearchAsync(searchTermArg.Value);
            }
            else if (packageIdCsv != null)
            {
                var packageIds = packageIdCsv.Value.ToCsvList();

                await GetByIdsAsync(packageIds);
            }
            else
            {
                HandleError("Provide either a search term or CSV list of package IDs argument.");
            }
        }
        public ArgSettings(CmdArgInfo cmdArgInfo)
        {
            KeyVaultUri = cmdArgInfo.GetArgument('u')?.Value;
            FilePath = cmdArgInfo.GetArgument('p')?.Value;
            SectionName = cmdArgInfo.GetArgument('s')?.Value;

            if (cmdArgInfo. GetArgument('f') != null)
                UseFileOverwrite = true;
        }
        private static void Main(string[] args)
        {
            var sw = new Stopwatch();

            sw.Start();

            Output.WriteAppHeader();

            _cmdAllowedArgs = CmdAllowedArgsFactory.Create();

            try
            {
                _cmdArgInfo = new CmdArgInfo(args, _cmdAllowedArgs);

                CmdArg path         = _cmdArgInfo.GetArgument('p');
                CmdArg useTable     = _cmdArgInfo.GetArgument('t');
                var    slnsToIgnore = _cmdArgInfo.GetSlnsToIgnore();

                var slnPaths = GetSlnPaths(path.Value, slnsToIgnore);

                if (slnPaths.Count == 0)
                {
                    HandleError($"{path.Value} and its sub directories contain no solution files.");
                }

                Output.WriteLine($"{slnPaths.Count} solutions found.");
                Output.WriteBlankLines();

                if (useTable != null)
                {
                    WriteSlnDetailsAsTable(slnPaths);
                }
                else
                {
                    WriteSlnDetails(slnPaths);
                }
            }
            catch (Exception ex)
            {
                HandleError(ex.Message);
            }

            sw.Stop();

            Output.WriteBlankLines();
            Output.WriteLine($"Time taken: {sw.Elapsed.TotalSeconds} seconds.");
            Output.WriteBlankLines();
        }
        public static List <string> GetSlnsToIgnore(this CmdArgInfo source)
        {
            var cmdArg = source.GetArgument('i');

            if (cmdArg == null)
            {
                return(new List <string>());
            }

            return(cmdArg.Value.Split(',').ToList());
        }
Example #5
0
 public ArgSettings(CmdArgInfo cmdArgInfo)
 {
     KeyVaultUri = cmdArgInfo.GetArgument('u')?.Value;
     FilePath    = cmdArgInfo.GetArgument('p')?.Value;
 }
 public ArgSettings(CmdArgInfo cmdArgInfo)
 {
     SectionName = cmdArgInfo.GetArgument('s')?.Value;
     KeyVaultUri = cmdArgInfo.GetArgument('u')?.Value;
 }