private static bool _fileExists = false; // does the ini file exists? static SettingsManager() { try { ConfigFile = string.Format("{0}/{1}", FileHelpers.AssemblyRoot, "config.ini"); // the config file's location. Parser = new IniConfigSource(ConfigFile); // see if the file exists by trying to parse it. _fileExists = true; } catch (Exception e) { Parser = new IniConfigSource(); // initiate a new .ini source. _fileExists = false; Logger.WarnException(e, "Error loading settings config.ini, will be using default settings. Exception thrown: "); } finally { // adds aliases so we can use On and Off directives in ini files. Parser.Alias.AddAlias("On", true); Parser.Alias.AddAlias("Off", false); // logger level aliases. Parser.Alias.AddAlias("MinimumLevel", Logger.Level.Trace); Parser.Alias.AddAlias("MaximumLevel", Logger.Level.Trace); } Parser.ExpandKeyValues(); }
public void ExpandKeyValuesMerge() { StringWriter writer = new StringWriter(); writer.WriteLine("[web]"); writer.WriteLine(" protocol = http"); writer.WriteLine("[server]"); writer.WriteLine(" domain1 = ${web|protocol}://nini.sf.net/"); IniConfigSource source = new IniConfigSource (new StringReader(writer.ToString())); StringWriter newWriter = new StringWriter(); newWriter.WriteLine("[web]"); newWriter.WriteLine(" apache = Apache implements ${protocol}"); newWriter.WriteLine("[server]"); newWriter.WriteLine(" domain2 = ${web|protocol}://nini.sf.net/"); IniConfigSource newSource = new IniConfigSource (new StringReader(newWriter.ToString())); source.Merge(newSource); source.ExpandKeyValues(); IConfig config = source.Configs["web"]; Assert.AreEqual("http", config.Get("protocol")); Assert.AreEqual("Apache implements http", config.Get("apache")); config = source.Configs["server"]; Assert.AreEqual("http://nini.sf.net/", config.Get("domain1")); Assert.AreEqual("http://nini.sf.net/", config.Get("domain2")); }
static ConfigurationManager() { try { /// <summary> /// Path to config file. /// </summary> ConfigFile = string.Format("{0}/{1}", FileHelpers.AssemblyRoot, "conf/Server.conf"); Parser = new IniConfigSource(ConfigFile); _fileExists = true; } catch (Exception) { Parser = new IniConfigSource(); _fileExists = false; Logger.Warn("Error loading settings Server.ini, will be using default settings."); } finally { Parser.Alias.AddAlias("On", true); Parser.Alias.AddAlias("Off", false); Parser.Alias.AddAlias("MinimumLevel", Logger.Level.Trace); Parser.Alias.AddAlias("MaximumLevel", Logger.Level.Trace); } Parser.ExpandKeyValues(); }
public void ExpandText() { StringWriter writer = new StringWriter(); writer.WriteLine("[Test]"); writer.WriteLine(" author = Brent"); writer.WriteLine(" domain = ${protocol}://nini.sf.net/"); writer.WriteLine(" apache = Apache implements ${protocol}"); writer.WriteLine(" developer = author of Nini: ${author} !"); writer.WriteLine(" love = We love the ${protocol} protocol"); writer.WriteLine(" combination = ${author} likes ${protocol}"); writer.WriteLine(" fact = fact: ${apache}"); writer.WriteLine(" protocol = http"); IniConfigSource source = new IniConfigSource (new StringReader(writer.ToString())); source.ExpandKeyValues(); IConfig config = source.Configs["Test"]; Assert.AreEqual("http", config.Get("protocol")); Assert.AreEqual("fact: Apache implements http", config.Get("fact")); Assert.AreEqual("http://nini.sf.net/", config.Get("domain")); Assert.AreEqual("Apache implements http", config.Get("apache")); Assert.AreEqual("We love the http protocol", config.Get("love")); Assert.AreEqual("author of Nini: Brent !", config.Get("developer")); Assert.AreEqual("Brent likes http", config.Get("combination")); }
private bool _fileExists = false; // does the ini file exists? public ConfigManagerHelper() { try { ConfigFile = Environment.CurrentDirectory + "\\" + "config.ini"; // the config file's location. Parser = new IniConfigSource(ConfigFile); // see if the file exists by trying to parse it. _fileExists = true; } catch (Exception ex) { Logging.LogManager.DefaultLogger.Error("Error loading settings config.ini, will be using default settings " + ex.Message); } finally { // adds aliases so we can use On and Off directives in ini files. Parser.Alias.AddAlias("On", true); Parser.Alias.AddAlias("Off", false); // logger level aliases. Parser.Alias.AddAlias("MinimumLevel", Logger.Level.Trace); Parser.Alias.AddAlias("MaximumLevel", Logger.Level.Trace); } Parser.ExpandKeyValues(); }
private static void LoadMainConfig() { try { _mainConfigFile = string.Format("{0}/Conf/{1}", FileHelpers.AssemblyRoot, "default.conf"); // the config file's location. _mainConfigParser = new IniConfigSource(_mainConfigFile); // see if the file exists by trying to parse it. _mainConfigFileExists = true; } catch (Exception) { _mainConfigParser = new IniConfigSource(); // initiate a new .ini source. _mainConfigFileExists = false; Log.Warning("Error loading settings {0}, will be using default settings.", _mainConfigFile); } finally { // adds aliases so we can use On and Off directives in ini files. _mainConfigParser.Alias.AddAlias("On", true); _mainConfigParser.Alias.AddAlias("Off", false); // logger level aliases. //Parser.Alias.AddAlias("MinimumLevel", Logger.Level.Trace); //Parser.Alias.AddAlias("MaximumLevel", Logger.Level.Trace); _mainConfigParser.ExpandKeyValues(); } }
public void ExpandKeyValuesConfigError() { StringWriter writer = new StringWriter(); writer.WriteLine("[server]"); writer.WriteLine(" domain1 = ${web|protocol}://nini.sf.net/"); IniConfigSource source = new IniConfigSource (new StringReader(writer.ToString())); try { source.ExpandKeyValues(); } catch (Exception ex) { Assert.AreEqual("Expand config not found: web", ex.Message); } }
private static bool _fileExists = false; // does the ini file exists? static ConfigurationManager() { try { ConfigFile = string.Format("{0}/{1}", FileHelpers.AssemblyRoot, "conf/Skills/BarbarianSkills.conf"); // the config file's location. Parser = new IniConfigSource(ConfigFile); // see if the file exists by trying to parse it. _fileExists = true; } catch (Exception) { Parser = new IniConfigSource(); // initiate a new .ini source. _fileExists = false; Logger.Warn("Error loading settings BarbarianSkills.conf, will be using default settings."); } Parser.ExpandKeyValues(); }
public void ExpandKeyInfiniteRecursion() { StringWriter writer = new StringWriter(); writer.WriteLine("[replace]"); writer.WriteLine("test = ${test} broken"); IniConfigSource source = new IniConfigSource (new StringReader(writer.ToString())); try { source.ExpandKeyValues(); } catch (ArgumentException ex) { Assert.AreEqual ("Key cannot have a expand value of itself: test", ex.Message); } }
/// <summary> /// Initialize a new instance of InIQueryProviderBase with query file. /// </summary> /// <param name="queryFilePath">Query String이 정의된 ini 파일의 전체경로</param> protected InIQueryProviderBase(string queryFilePath) { if (IsDebugEnabled) { log.Debug("쿼리문을 제공하는 IQueryProvider의 인스턴스를 생성합니다. queryFilePath=[{0}]", queryFilePath); } try { queryFilePath = FileTool.GetPhysicalPath(queryFilePath); if (queryFilePath.FileExists() == false) { throw new FileNotFoundException("QueryStringFile이 없습니다. queryFilePath=" + queryFilePath, queryFilePath); } QueryFilePath = queryFilePath; // Ini File을 SambaStyle로 해야 다중라인을 이해한다. 다중라인의 구분은 backslash ('\') 로 구분한다. // QuerySource = new IniConfigSource(new IniDocument(QueryFilePath, IniFileType.SambaStyle)); // parameter value값들을 계산해둔다. // QuerySource.ExpandKeyValues(); } catch (Exception ex) { if (log.IsErrorEnabled) { log.Error("InIQueryProviderBase를 초기화하는데 실패했습니다!!! queryFilePath=[{0}]" + QueryFilePath); log.Error(ex); } throw; } if (IsDebugEnabled) { log.Debug("Query String 정보를 파싱했습니다. queryFilePath=[{0}]", QueryFilePath); } }
private static bool _fileExists = false; // does the ini file exists? static ConfigurationManager() { try { ConfigFile = string.Format("{0}/{1}", Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "config.ini"); // the config file's location. Parser = new IniConfigSource(ConfigFile); // see if the file exists by trying to parse it. _fileExists = true; } catch (Exception) { Parser = new IniConfigSource(); // initiate a new .ini source. _fileExists = false; } finally { // adds aliases so we can use On and Off directives in ini files. Parser.Alias.AddAlias("On", true); Parser.Alias.AddAlias("Off", false); } Parser.ExpandKeyValues(); }
private static bool _fileExists = false; // does the ini file exists? static ConfigManager() { try { ConfigFile = string.Format("{0}/{1}", FileHelpers.AssemblyRoot, "config.ini"); // the config file's location. Parser = new IniConfigSource(ConfigFile); // see if the file exists by trying to parse it. _fileExists = true; } catch (Exception) { Parser = new IniConfigSource(); // initiate a new .ini source. _fileExists = false; SysCons.LogWarn("Cannot loading settings file \"config.ini\", will be using default settings."); } finally { // adds aliases so we can use On and Off directives in ini files. Parser.Alias.AddAlias("On", true); Parser.Alias.AddAlias("Off", false); } Parser.ExpandKeyValues(); }