static internal EventQueueConfiguration GetConfig() { EventQueueConfiguration config = (EventQueueConfiguration)DataCache.GetCache("EventQueueConfig"); if ((config == null)) { string filePath = Globals.HostMapPath + "EventQueue\\EventQueue.config"; if (File.Exists(filePath)) { config = new EventQueueConfiguration(); config.Deserialize(FileSystemUtils.ReadFile(filePath)); //Set back into Cache // DataCache.SetCache("EventQueueConfig", config, new CacheDependency(filePath)); } else { config = new EventQueueConfiguration(); config.PublishedEvents = new Dictionary <string, PublishedEvent>(); config.EventQueueSubscribers = new Dictionary <string, SubscriberInfo>(); SubscriberInfo subscriber = new SubscriberInfo("DNN Core"); RegisterEventSubscription(config, "Application_Start", subscriber); RegisterEventSubscription(config, "Application_Start_FirstRequest", subscriber); SaveConfig(config, filePath); } } return(config); }
internal static void SaveConfig(EventQueueConfiguration config, string filePath) { StreamWriter oStream = File.CreateText(filePath); oStream.WriteLine(config.Serialize()); oStream.Close(); //Set back into Cache //DataCache.SetCache("EventQueueConfig", config, new CacheDependency(filePath)); }
public static void RegisterEventSubscription(EventQueueConfiguration config, string eventname, SubscriberInfo subscriber) { PublishedEvent e = new PublishedEvent(); e.EventName = eventname; e.Subscribers = subscriber.ID; config.PublishedEvents.Add(e.EventName, e); if (!config.EventQueueSubscribers.ContainsKey(subscriber.ID)) { config.EventQueueSubscribers.Add(subscriber.ID, subscriber); } }
static internal EventQueueConfiguration GetConfig() { EventQueueConfiguration config = (EventQueueConfiguration)DataCache.GetCache("EventQueueConfig"); if ((config == null)) { string filePath = Globals.HostMapPath + "EventQueue\\EventQueue.config"; if (File.Exists(filePath)) { config = new EventQueueConfiguration(); config.Deserialize(FileSystemUtils.ReadFile(filePath)); //Set back into Cache // DataCache.SetCache("EventQueueConfig", config, new CacheDependency(filePath)); } else { config = new EventQueueConfiguration(); config.PublishedEvents = new Dictionary<string, PublishedEvent>(); config.EventQueueSubscribers = new Dictionary<string, SubscriberInfo>(); SubscriberInfo subscriber = new SubscriberInfo("DNN Core"); RegisterEventSubscription(config, "Application_Start", subscriber); RegisterEventSubscription(config, "Application_Start_FirstRequest", subscriber); SaveConfig(config, filePath); } } return config; }