private static void Main(string[] args) { ILog _logger = LogManager.GetLogger(typeof(Program)); IEnumerable<string> elementNames = null; _logger.Info("Command Line Started"); // you could delete this line ... var options = new CommandLineOptions(); // Checks for options passed in the command line if (Parser.Default.ParseArguments(args, options)) { // transfer option(s) to application level Configuration.EnableAnalysisErrorOutput = options.EnableAnalysesErrorOutput; if (!File.Exists(options.ElementsFile)) throw new FileNotFoundException("Required file with elements names does not exist"); // retrieves lines in the passed file, filters out comments (# comment). elementNames = File.ReadLines(options.ElementsFile).ToList().Where(line => !line.StartsWith("#")); var engine = new Core.AnalysesEngine(); engine.RunCalculations(elementNames, options.StartTime.toDate(), options.EndTime.toDate(), options.Interval.ToEnum<TimeStampsGenerator.TimeStampsInterval>(), options.AFServerName, options.AFDatabaseName, options.AFThreadCount, options.AnalysesthreadCount, options.DataWriterDelay, options.OutputFile, options.EnableWrite); // exit ok Environment.Exit(0); } else { // exit with error Environment.Exit(1); } }
private static void Main(string[] args) { ILog _logger = LogManager.GetLogger(typeof(Program)); IEnumerable <string> elementNames = null; _logger.Info("Command Line Started"); // you could delete this line ... var options = new CommandLineOptions(); // Checks for options passed in the command line if (Parser.Default.ParseArguments(args, options)) { // transfer option(s) to application level Configuration.EnableAnalysisErrorOutput = options.EnableAnalysesErrorOutput; if (!File.Exists(options.ElementsFile)) { throw new FileNotFoundException("Required file with elements names does not exist"); } // retrieves lines in the passed file, filters out comments (# comment). elementNames = File.ReadLines(options.ElementsFile).ToList().Where(line => !line.StartsWith("#")); var engine = new Core.AnalysesEngine(); engine.RunCalculations(elementNames, options.StartTime.toDate(), options.EndTime.toDate(), options.Interval.ToEnum <TimeStampsGenerator.TimeStampsInterval>(), options.AFServerName, options.AFDatabaseName, options.AFThreadCount, options.AnalysesthreadCount, options.DataWriterDelay, options.OutputFile, options.EnableWrite); // exit ok Environment.Exit(0); } else { // exit with error Environment.Exit(1); } }