private int Run(ParametersModel p) { switch(p.Action) { case ActionType.Help: PrintHelp(p); break; case ActionType.CopyOnChange: CopyOnChange(p); break; } return 0; }
public ParametersModel GetParameters(string[] args) { var p = new ParametersModel(); var optionSet = new Mono.Options.OptionSet(); optionSet.Add("s=|source-file", "specify the source file to watch", s => p.SourceFile = s); optionSet.Add("t=|target-file", "specify the target file path", s => p.TargetFile = s); optionSet.Add("?|h|help", "prints this description", s => p.Action = ActionType.Help); p.OptionSet = optionSet; optionSet.Parse(args); return p; }
private void CopyOnChange(ParametersModel p) { CopyOnChange(p.SourceFile, p.TargetFile); }
private void PrintHelp(ParametersModel p) { p.OptionSet.WriteOptionDescriptions(Console.Out); }