示例#1
0
 public ProcessRunner(
     IToolProcess process,
     IConsole console)
 {
     _process = process;
     _console = console;
 }
示例#2
0
 public ProcessRunner(
     [NotNull] IEnumerable <IToolProcess> processes,
     [NotNull] IConsole console,
     [NotNull] IEnvironment environment)
 {
     if (environment == null)
     {
         throw new ArgumentNullException(nameof(environment));
     }
     _process = (processes ?? throw new ArgumentNullException(nameof(processes))).Single(i => i.IsSupported(environment.OsType));
     _console = console ?? throw new ArgumentNullException(nameof(console));
 }
示例#3
0
 public virtual OptionSet LoadOptions(IEnumerable <string> args, ILogger logger)
 {
     try
     {
         var p = new OptionSet()
         {
             { "tool=", "Tool to run: dbmigration, cleanup, etc", v => Tool = v },
             { "h|help", "show this message and exit", v => ShowHelp = v != null },
         };
         var extra = p.Parse(args);
         HelpText = Help(p);
         Process  = null;
         return(p);
     }
     catch (OptionException e)
     {
         ParsingError = e.Message;
         return(null);
     }
 }