public static void SaveConfig(RewriterRuleCollection rules) { if (rules != null) { var config = new RewriterConfiguration { Rules = rules }; //Create a new Xml Serializer var ser = new XmlSerializer(typeof(RewriterConfiguration)); //Create a FileStream for the Config file string filePath = Globals.ApplicationMapPath + "\\SiteUrls.config"; if (File.Exists(filePath)) { //make sure file is not read-only File.SetAttributes(filePath, FileAttributes.Normal); } var fileWriter = new FileStream(filePath, FileMode.Create, FileAccess.Write, FileShare.Write); //Open up the file to serialize var writer = new StreamWriter(fileWriter); //Serialize the RewriterConfiguration ser.Serialize(writer, config); //Close the Writers writer.Close(); fileWriter.Close(); //Set Cache DataCache.SetCache("RewriterConfig", config, new DNNCacheDependency(filePath)); } }
public static void SaveConfig(RewriterRuleCollection rules) { if (rules != null) { var config = new RewriterConfiguration { Rules = rules }; //Create a new Xml Serializer var ser = new XmlSerializer(typeof(RewriterConfiguration)); //Create a FileStream for the Config file var filePath = Common.Utilities.Config.GetPathToFile(Common.Utilities.Config.ConfigFileType.SiteUrls); if (File.Exists(filePath)) { //make sure file is not read-only File.SetAttributes(filePath, FileAttributes.Normal); } using (var fileWriter = new FileStream(filePath, FileMode.Create, FileAccess.Write, FileShare.Write)) using (var writer = new StreamWriter(fileWriter)) { //Serialize the RewriterConfiguration ser.Serialize(writer, config); //Close the Writers writer.Close(); fileWriter.Close(); } //Set Cache DataCache.SetCache("RewriterConfig", config, new DNNCacheDependency(filePath)); } }
public static RewriterConfiguration GetConfig() { var config = new RewriterConfiguration {Rules = new RewriterRuleCollection()}; FileStream fileReader = null; string filePath = ""; try { config = (RewriterConfiguration) DataCache.GetCache("RewriterConfig"); if (config == null) { lock (_threadLocker) { config = (RewriterConfiguration) DataCache.GetCache("RewriterConfig"); if (config == null) { filePath = Common.Utilities.Config.GetPathToFile(Common.Utilities.Config.ConfigFileType.SiteUrls); //Create a FileStream for the Config file fileReader = new FileStream(filePath, FileMode.Open, FileAccess.Read, FileShare.Read); var doc = new XPathDocument(fileReader); config = new RewriterConfiguration {Rules = new RewriterRuleCollection()}; foreach (XPathNavigator nav in doc.CreateNavigator().Select("RewriterConfig/Rules/RewriterRule")) { var rule = new RewriterRule { LookFor = nav.SelectSingleNode("LookFor").Value, SendTo = nav.SelectSingleNode("SendTo").Value }; config.Rules.Add(rule); } if (File.Exists(filePath)) { //Set back into Cache DataCache.SetCache("RewriterConfig", config, new DNNCacheDependency(filePath)); } } } } } catch (Exception ex) { //log it var log = new LogInfo {LogTypeKey = EventLogController.EventLogType.HOST_ALERT.ToString()}; log.AddProperty("UrlRewriter.RewriterConfiguration", "GetConfig Failed"); log.AddProperty("FilePath", filePath); log.AddProperty("ExceptionMessage", ex.Message); LogController.Instance.AddLog(log); Logger.Error(log); } finally { if (fileReader != null) { //Close the Reader fileReader.Close(); } } return config; }
public static RewriterConfiguration GetConfig() { var config = new RewriterConfiguration { Rules = new RewriterRuleCollection() }; FileStream fileReader = null; string filePath = ""; try { config = (RewriterConfiguration)DataCache.GetCache("RewriterConfig"); if ((config == null)) { filePath = Common.Utilities.Config.GetPathToFile(Common.Utilities.Config.ConfigFileType.SiteUrls); //Create a FileStream for the Config file fileReader = new FileStream(filePath, FileMode.Open, FileAccess.Read, FileShare.Read); var doc = new XPathDocument(fileReader); config = new RewriterConfiguration { Rules = new RewriterRuleCollection() }; foreach (XPathNavigator nav in doc.CreateNavigator().Select("RewriterConfig/Rules/RewriterRule")) { var rule = new RewriterRule { LookFor = nav.SelectSingleNode("LookFor").Value, SendTo = nav.SelectSingleNode("SendTo").Value }; config.Rules.Add(rule); } if (File.Exists(filePath)) { //Set back into Cache DataCache.SetCache("RewriterConfig", config, new DNNCacheDependency(filePath)); } } } catch (Exception ex) { //log it var log = new LogInfo { LogTypeKey = EventLogController.EventLogType.HOST_ALERT.ToString() }; log.AddProperty("UrlRewriter.RewriterConfiguration", "GetConfig Failed"); log.AddProperty("FilePath", filePath); log.AddProperty("ExceptionMessage", ex.Message); LogController.Instance.AddLog(log); Logger.Error(log); } finally { if (fileReader != null) { //Close the Reader fileReader.Close(); } } return(config); }
public static void SaveConfig(RewriterRuleCollection rules) { if (rules != null) { var config = new RewriterConfiguration {Rules = rules}; //Create a new Xml Serializer var ser = new XmlSerializer(typeof (RewriterConfiguration)); //Create a FileStream for the Config file string filePath = Globals.ApplicationMapPath + "\\SiteUrls.config"; if (File.Exists(filePath)) { //make sure file is not read-only File.SetAttributes(filePath, FileAttributes.Normal); } var fileWriter = new FileStream(filePath, FileMode.Create, FileAccess.Write, FileShare.Write); //Open up the file to serialize var writer = new StreamWriter(fileWriter); //Serialize the RewriterConfiguration ser.Serialize(writer, config); //Close the Writers writer.Close(); fileWriter.Close(); //Set Cache DataCache.SetCache("RewriterConfig", config, new DNNCacheDependency(filePath)); } }
protected override object SaveViewState() { var config = new RewriterConfiguration(); config.Rules = Rules; object baseState = base.SaveViewState(); var allStates = new object[2]; allStates[0] = baseState; allStates[1] = XmlUtils.Serialize(config); return allStates; }
protected override void LoadViewState(object savedState) { var myState = (object[]) savedState; if ((myState[0] != null)) { base.LoadViewState(myState[0]); } if ((myState[1] != null)) { var config = new RewriterConfiguration(); //Deserialize into RewriterConfiguration #pragma warning disable 612,618 config = (RewriterConfiguration) XmlUtils.Deserialize(Convert.ToString(myState[1]), config.GetType()); #pragma warning restore 612,618 Rules = config.Rules; } }
protected override void LoadViewState(object savedState) { var myState = (object[]) savedState; if ((myState[0] != null)) { base.LoadViewState(myState[0]); } if ((myState[1] != null)) { var config = new RewriterConfiguration(); //Deserialize into RewriterConfiguration var xmlDocument = new XmlDocument(); xmlDocument.LoadXml(Convert.ToString(myState[1])); config = CBO.DeserializeObject<RewriterConfiguration>(xmlDocument); Rules = config.Rules; } }