Exemplo n.º 1
0
        static int Main(string[] args)
        {
            var options        = new ConverterOptions();
            var asmName        = typeof(Program).GetTypeInfo().Assembly.GetName();
            var programVersion = typeof(Program).GetTypeInfo().Assembly.GetName().Version;
            var version        = string.Format("version {0}.{1}.{2}", programVersion.Major, programVersion.Minor, programVersion.Build);

            if (!CommandLineParser <ConverterOptions> .ParseArgs(args, options, asmName.Name, version) || !options.ValidateArgs())
            {
                System.Threading.Thread.Sleep(1500);
                return(-1);
            }

            options.OutputSetOptions();

#if !DEBUG
            try
            {
#endif
            var converter = new MzidToTsvConverter();
            converter.ConvertToTsv(options);
            Console.WriteLine("Conversion finished!");
            System.Threading.Thread.Sleep(700);
            return(0);

#if !DEBUG
        }
        catch (Exception e)
        {
            Console.WriteLine("Conversion failed: " + e.Message);
            Console.WriteLine(e.StackTrace);

            System.Threading.Thread.Sleep(1500);
            var errorCode = e.Message.GetHashCode();
            if (errorCode == 0)
            {
                return(-1);
            }
            return(errorCode);
        }
#endif
        }
Exemplo n.º 2
0
        // Ignore Spelling: Bryson, Conf

        private static int Main(string[] args)
        {
            var asmName        = typeof(Program).GetTypeInfo().Assembly.GetName();
            var exeName        = Path.GetFileName(Assembly.GetExecutingAssembly().Location); // Alternatively: System.AppDomain.CurrentDomain.FriendlyName
            var programVersion = typeof(Program).GetTypeInfo().Assembly.GetName().Version;
            var version        = $"version {programVersion.Major}.{programVersion.Minor}.{programVersion.Build}";

            var parser = new CommandLineParser <ConverterOptions>(asmName.Name, version)
            {
                ProgramInfo = "This program converts a .mzid file created by MS-GF+ into a tab-delimited text file.",

                ContactInfo = "Program written by Bryson Gibbons for the Department of Energy " + Environment.NewLine +
                              "(PNNL, Richland, WA)" + Environment.NewLine + Environment.NewLine +
                              string.Format(
                    "Version: {0}.{1}.{2} ({3})",
                    programVersion.Major, programVersion.Minor, programVersion.Build, ConverterOptions.PROGRAM_DATE) +
                              Environment.NewLine + Environment.NewLine +
                              "E-mail: [email protected] or [email protected]" + Environment.NewLine +
                              "Website: https://github.com/PNNL-Comp-Mass-Spec/ or https://panomics.pnnl.gov/ or https://www.pnnl.gov/integrative-omics",

                UsageExamples =
                {
                    exeName + " Results.mzid",
                    exeName + " Results.mzid -unroll",
                    exeName + " Results.mzid -unroll -showDecoy",
                }
            };

            parser.AddParamFileKey("Conf");

            var parseResults = parser.ParseArgs(args);
            var options      = parseResults.ParsedResults;

            if (!parseResults.Success)
            {
                Thread.Sleep(1500);
                return(-1);
            }

            if (!options.ValidateArgs(out var errorMessage))
            {
                parser.PrintHelp();

                Console.WriteLine();
                ConsoleMsgUtils.ShowWarning("Validation error:");
                ConsoleMsgUtils.ShowWarning(errorMessage);

                Thread.Sleep(1500);
                return(-1);
            }

            options.OutputSetOptions();

            try
            {
                var converter = new MzidToTsvConverter();
                converter.ConvertToTsv(options);

                Console.WriteLine();
                Console.WriteLine("Conversion finished!");
                Thread.Sleep(700);

                return(0);
            }
            catch (Exception ex)
            {
                ConsoleMsgUtils.ShowError("Conversion failed", ex);

                Thread.Sleep(1500);
                var errorCode = ex.Message.GetHashCode();
                if (errorCode == 0)
                {
                    return(-1);
                }
                return(errorCode);
            }
        }