public void AddAssociation(string evnt, IChannel ch, ScriptCallInfo info) { if (associations.ContainsKey(ch.FullId) == false) { associations[ch.FullId] = new Dictionary <string, ScriptCallInfo>(); } associations[ch.FullId][evnt] = info; Save(); }
internal void Load() { associations.Clear(); XmlDocument doc = new System.Xml.XmlDocument(); using (Stream stream = Env.Current.Project.GetData(ProjectEntityType.Settings, "channels_script_handlers")) { if (stream != null) { try { doc.Load(stream); } catch { return; } } } XmlNodeList channelNodes = doc.GetElementsByTagName("channel"); foreach (XmlElement channelNode in channelNodes) { XmlNodeList eventNodes = channelNode.GetElementsByTagName("event"); if (eventNodes.Count > 0) { string channelName = channelNode.GetAttribute("name"); associations[channelName] = new Dictionary <string, ScriptCallInfo>(); foreach (XmlElement eventNode in eventNodes) { ScriptCallInfo ci = new ScriptCallInfo(); ci.HandlerName = eventNode.GetAttribute("handlerName"); ci.ScriptName = eventNode.GetAttribute("scriptName"); associations[channelName][eventNode.GetAttribute("name")] = ci; } } } }
public void AddAssociation(string evnt, ScriptCallInfo info) { associations[evnt] = info; }