public int Run(RootArguments args) { if (args.PrintVersion) { PrintVersion(); return(0); } if (args.PrintHelp) { PrintHelp(); return(0); } return(1); }
/// <summary> /// Handles the <see cref="RootCommand"/>. /// </summary> /// <param name="args">The arguments.</param> /// <param name="console">The console.</param> /// <returns>The operation result code.</returns> internal static int Handle(RootArguments args, IConsole console) { try { IEnumerable <IHash> hashAlgos = InitHashAlgos(); IEnumerable <HashResult> hashes = ComputeHashes(hashAlgos, args.Input, args.Algorithms); if (args.Json) { PrintResultsAsJson(args.Input, hashes, console); return(0); } if (args.Xml) { PrintResultsAsXml(args.Input, hashes, console); return(0); } PrintResults(hashes, console); if (!string.IsNullOrEmpty(args.Compare)) { PrintComparison(hashes, args.Compare, console); } return(0); } catch (ArgumentException e) { console.WriteError(e.Message); return(1); } }