Exemple #1
0
        public static Options ParseOptions(string[] args)
        {
            var options = new Options();

            CommandLine.Parser.Default.ParseArgumentsStrict(args, options);

            if (options.InputNumber > 0 || !string.IsNullOrWhiteSpace(options.InputFile) || options.UseInteractiveMode())
            {
                return options;
            }
            Console.Error.Write(CommandLine.Text.HelpText.AutoBuild(options));
            throw new ArgumentException("Invalid paramater set", "args");
        }
Exemple #2
0
        public static IInputHandler GetInputHandler(Options options)
        {
            if (options.UseInteractiveMode())
            {
                return new ConsoleIOHandler();
            }

            if (options.InputNumber > 0)
            {
                return new GenericIOHandler { InputHandler = () => options.InputNumber };
            }

            switch (options.InputFileType)
            {
                default:
                case Options.FileType.Undefined:
                case Options.FileType.PlainText:
                    return new TextFileIOHandler(options.InputFile);
                case Options.FileType.Xml:
                    return new XmlIOHandler(options.InputFile);
            }
        }