private void ReloadConfiguration() { XmlSerializer xmlSerializer = new XmlSerializer(typeof(RuleConfiguration)); while (true) { try { using (StreamReader srdr = new StreamReader(_xmlFile)) { RuleConfiguration config = (RuleConfiguration)xmlSerializer.Deserialize(srdr); Rules.Clear(); foreach (MessageValidator rule in config.Rules) { Rules.Add(rule); } } break; } catch (IOException) { // Keep retrying if there is an access error } } }
public Program() { Console.Title = "Hyland IM Server"; LoadUsers(); if (!Stats.Initialize(Users.Keys)) { Shutdown(); return; } RuleConfiguration = new RuleConfiguration(_RulesXmlPath); Console.WriteLine(string.Format("----- Hyland IM Server -----")); server = new TcpListener(IPAddress.Parse(_IPAddress), Settings.Default.Port); Console.WriteLine("IP Address: {0}, Port: {1}", _IPAddress, Settings.Default.Port.ToString()); server.Start(); Listen(); }