public void Initialise(string configLocation, string clientId) { if (string.IsNullOrEmpty(configLocation)) { configLocation = DEFAULT_CONFIG_LOCATION; } FileLibrary fileControl = new FileLibrary(); CommonLibrary lib = new CommonLibrary(); _configLocation = configLocation; string xml = fileControl.ReadXmlFile(_configLocation); SchemaLibrary validateSchema = new SchemaLibrary(); if (!validateSchema.Validate(xml, DEFAULT_SCHEMA_LOCATION)) { throw new TrappedException(enmMessageCode.SchemaFailedValidation); } ConfigXml = new XmlDocument(); ConfigXml.LoadXml(xml); ClientId = clientId; //IPAddress = lib.GetString(ConfigXml, "Config/SettingList/Setting[@id='ipaddress']", "value", regexMatch: Properties.Resources.RegexIPAddress); //Port = lib.GetInt(ConfigXml, "Config/SettingList/Setting[@id='port']", "value"); //Prompt = lib.GetString(ConfigXml, "Config/SettingList/Setting[@id='prompt']", "value"); //Language = lib.GetString(ConfigXml, "Config/SettingList/Setting[@id='language']", "value"); //IsEncrypted = lib.GetBoolean(ConfigXml, "Config/SettingList/Setting[@id='isencrypted']", "value"); //AllowGuests = lib.GetBoolean(ConfigXml, "Config/SettingList/Setting[@id='allowguests']", "value"); }
public void SaveState() { FileLibrary fileControl = new FileLibrary(); CommonLibrary lib = new CommonLibrary(); XmlDocument xmlDoc = new XmlDocument(); XmlNode settingNode = SettingCache.DeSerialize(); xmlDoc.ImportNode(settingNode, true); XmlNode resourceNode = ResourceCache.DeSerialize(); xmlDoc.ImportNode(resourceNode, true); XmlNode lexiconNode = LexiconCache.DeSerialize(); xmlDoc.ImportNode(lexiconNode, true); // ETC. ETC. ETC. fileControl.OverwriteFileGuarantee(_configLocation, xmlDoc, DEFAULT_SCHEMA_LOCATION); //xmlDoc.Save(_configLocation); //lib.SetAttribute(ConfigXml, "Config", "updated", DateTime.Now.ToString()); //lib.SetAttribute(ConfigXml, "Config/Settings/Add[@id='ipaddress']", "value", IPAddress); //lib.SetAttribute(ConfigXml, "Config/Settings/Add[@id='port']", "value", Convert.ToString(Port)); //lib.SetAttribute(ConfigXml, "Config/Settings/Add[@id='language']", "value", Language); //lib.SetAttribute(ConfigXml, "Config/Settings/Add[@id='isencrypted']", "value", Convert.ToString(IsEncrypted)); //lib.SetAttribute(ConfigXml, "Config/Settings/Add[@id='allowguests']", "value", Convert.ToString(AllowGuests)); //lib.SetAttribute(ConfigXml, "Config/Settings/Add[@id='guid']", "value", Convert.ToString(ClientId)); //lib.SetAttribute(ConfigXml, "Config/Settings/Add[@id='session']", "value", Convert.ToString(SessionId)); //XmlNode node; //XmlNode impNode; //XmlNode existingNode; //node = Lexicon.GetNode(); //impNode = _configXml.ImportNode(node, true); //existingNode = _configXml.SelectSingleNode("Config/Lexicon"); //existingNode.ParentNode.ReplaceChild(impNode, existingNode); //node = Resource.GetNode(); //impNode = _configXml.ImportNode(node, true); //existingNode = _configXml.SelectSingleNode("Config/Resource"); //existingNode.ParentNode.ReplaceChild(impNode, existingNode); //node = Users.GetNode(); //impNode = _configXml.ImportNode(node, true); //existingNode = _configXml.SelectSingleNode("Config/Users"); //existingNode.ParentNode.ReplaceChild(impNode, existingNode); // }