Example #1
0
 public Args(string[] args) : base(args)
 {
     foreach (var opt in Options)
     {
         if (s_helpStrings.Any(s => opt.Name.Equals(s, StringComparison.OrdinalIgnoreCase)))
         {
             WriteHelp();
             Help = true;
             return;
         }
         else if (opt.Name.Equals("applicationConfig", StringComparison.OrdinalIgnoreCase) || opt.Name.Equals("ac", StringComparison.OrdinalIgnoreCase))
         {
             var name = ParseStringOption(opt);
             Contract.Requires(File.Exists(name), "You must specify a configuration file");
             AppConfig = ApplicationConfiguration.FromJson(name);
         }
         else if (opt.Name.Equals("inputDirectory", StringComparison.OrdinalIgnoreCase) || opt.Name.Equals("id", StringComparison.OrdinalIgnoreCase))
         {
             InputDirectory = ParseStringOption(opt);
         }
         else if (opt.Name.Equals("outputDirectory", StringComparison.OrdinalIgnoreCase) || opt.Name.Equals("od", StringComparison.OrdinalIgnoreCase))
         {
             OutputDirectory = ParseStringOption(opt);
         }
         else if (opt.Name.Equals("linearize", StringComparison.OrdinalIgnoreCase) || opt.Name.Equals("lo", StringComparison.OrdinalIgnoreCase))
         {
             LinearizeOnly = ParseBooleanOption(opt);
         }
         else if (opt.Name.Equals("numSamples", StringComparison.OrdinalIgnoreCase) || opt.Name.Equals("ns", StringComparison.OrdinalIgnoreCase))
         {
             NumSamples = ParseInt32Option(opt, 1, int.MaxValue);
         }
         else if (opt.Name.Equals("sampleSize", StringComparison.OrdinalIgnoreCase) || opt.Name.Equals("ss", StringComparison.OrdinalIgnoreCase))
         {
             SampleSize = ParseInt32Option(opt, 1, int.MaxValue);
         }
         else if (opt.Name.Equals("buildRF", StringComparison.OrdinalIgnoreCase) || opt.Name.Equals("brfo", StringComparison.OrdinalIgnoreCase))
         {
             BuildRandomForestOnly = ParseBooleanOption(opt);
         }
         else if (opt.Name.Equals("evalRF", StringComparison.OrdinalIgnoreCase) || opt.Name.Equals("erfo", StringComparison.OrdinalIgnoreCase))
         {
             EvaluateRandomForestOnly = ParseBooleanOption(opt);
         }
         else if (opt.Name.Equals("evalCPC", StringComparison.OrdinalIgnoreCase) || opt.Name.Equals("ecpco", StringComparison.OrdinalIgnoreCase))
         {
             EvaluateContentPlacementClassifierOnly = ParseBooleanOption(opt);
         }
     }
     Contract.Requires(AppConfig != null, "You must specify a configuration file");
 }