Пример #1
0
        public OptionsManager(string path, Logger logger)
        {
            string options;

            try
            {
                using (StreamReader sr = new StreamReader($"{path}\\appsettings.json"))
                {
                    options = sr.ReadToEnd();
                }

                jsonOptions     = new ETLJSONOptions(options);
                isJsonConnected = true;
                logger.Log("appsettings.json is loaded.", false);
            }
            catch (Exception ex)
            {
                isJsonConnected = false;
                logger.Log(ex.Message, false);
            }

            try
            {
                using (StreamReader sr = new StreamReader($"{path}\\config.xml"))
                {
                    options = sr.ReadToEnd();
                }

                xmlOptions     = new ETLXMLOptions(options);
                isXmlConnected = true;
                logger.Log("config.xml is loaded.", true);
            }
            catch (Exception ex)
            {
                isXmlConnected = false;
                logger.Log(ex.Message, true);
            }

            if (!isJsonConnected && !isXmlConnected)
            {
                defaultOptions = new ETLOptions();
                logger.Log("Default options is used.", true);
            }
        }
Пример #2
0
        public ConfigManager(string mainPath)
        {
            defaultConfig = new ETLOptions();

            string config;

            try
            {
                using (var stream = new StreamReader($"{mainPath}\\appsettings.json"))
                {
                    config = stream.ReadToEnd();
                }
                jsonConfig          = new ETLJSONOptions(config);
                jsonConfigParsed    = true;
                ConfigManagingInfo += " JSON configuration parsed.";
            }
            catch
            {
                ConfigManagingInfo += " Couldn't parse JSON.";
            }
            try
            {
                using (var stream = new StreamReader($"{mainPath}\\config.xml"))
                {
                    config = stream.ReadToEnd();
                }
                xmlConfig           = new ETLXMLOptions(config);
                xmlConfigParsed     = true;
                ConfigManagingInfo += " XML configuration parsed.";
            }
            catch
            {
                ConfigManagingInfo += " Couldn't parse XML.";
            }
            ValidateParsedOptions();
        }