/// <summary> /// set up endpoint supports for the options /// </summary> /// <param name="startOptions">Parsed StartOptions</param> public void SetEndPoints(StartOptions.StartOptions startOptions) { startOptions.Service = string.IsNullOrEmpty(startOptions.Service) ? "time" : startOptions.Service; if (startOptions.Service != string.Empty) { string[] service = startOptions.Service.Split(','); List <TaskTypeEnum> tasksToRun = new List <TaskTypeEnum>(); string[] time = new string[] { "time", "timeseries" }; string[] alarm = new string[] { "alarm", "alarms" }; string[] aud = new string[] { "audit", "audits" }; foreach (string s in service) { if (time.Contains(s.ToLower())) { tasksToRun.Add(TaskTypeEnum.TimeSeries); } else if (aud.Contains(s.ToLower())) { tasksToRun.Add(TaskTypeEnum.Audit); } else if (alarm.Contains(s.ToLower())) { tasksToRun.Add(TaskTypeEnum.Alarm); } } SetTaskUtilityFactory(tasksToRun); } }
/// <summary> /// try to get an access token from authentication service using provided information in startOptions /// </summary> /// <param name="startOptions">options</param> /// <returns>bool: True = success</returns> public async Task <bool> InitApiRequestAsync(StartOptions.StartOptions startOptions) { //Initialize cache and ApiRequest class _cache = new CachedMemory(CachedMemory.CACHE_SIZE_NO_LIMIT, @".\data-extractor-cache.txt"); var isLoggedIn = await ApiRequest.InitializeAsync(_cache, startOptions.Username, startOptions.Password, startOptions.Host, startOptions.InvalidCertificate); if (isLoggedIn) { return(true); } else { _log.Error(@"Could not log in: The Host, Username, and Password combination did not work, please try again!"); return(false); } }
/// <summary> /// log into database using provided connection string to make sure the connection string is accurate /// </summary> /// <param name="startOptions">Parsed StartOptions</param> /// <returns>bool: True = success</returns> public async Task <bool> SetDBSettingsAsync(StartOptions.StartOptions startOptions) { //Set the DB Connection String var isDBLoggedIn = await DBDataModel.CheckDBConnectionAsync(startOptions.DBConnectionString); //Set the Save Destination if (startOptions.Destination == null || "csv".Equals(startOptions.Destination.ToLower())) { SetDataSaveDestination(DestinationSaveEnum.Csv); } else if ("sqlserver".Equals(startOptions.Destination.ToLower())) { SetDataSaveDestination(DestinationSaveEnum.SqlServer); } if (!isDBLoggedIn) { _log.Error("The Database connection is not correct."); return(false); } return(true); }