private anmar.SharpWebMail.ServerSelector ParseConfigServers(System.Xml.XmlNodeList list) { anmar.SharpWebMail.ServerSelector selector = new anmar.SharpWebMail.ServerSelector(); foreach (System.Xml.XmlNode item in list) { if (item.NodeType.Equals(System.Xml.XmlNodeType.Element) && (item.LocalName.Equals("server") || item.LocalName.Equals("add"))) { System.Xml.XmlElement element = (System.Xml.XmlElement)item; if (element.HasAttribute("key") && element.HasAttribute("value")) // Old format { selector.Add(element.GetAttribute("key"), element.GetAttribute("value")); } else if (element.HasAttribute("protocol") && element.HasAttribute("host") && element.HasAttribute("port")) // New format { anmar.SharpWebMail.EmailServerInfo server = new anmar.SharpWebMail.EmailServerInfo(element.GetAttribute("protocol"), element.GetAttribute("host"), element.GetAttribute("port")); if (element.HasAttribute("regexp")) { server.SetCondition(element.GetAttribute("regexp")); } if (element.HasAttribute("name")) { server.Name = element.GetAttribute("name"); } if (server.IsValid()) { selector.Add(server); } } } } return(selector); }
public void Add(System.Object key, System.Object value) { if (key == null || value == null) { throw new System.ArgumentNullException(); } anmar.SharpWebMail.EmailServerInfo server = anmar.SharpWebMail.EmailServerInfo.Parse(value.ToString()); if (server != null) { server.SetCondition(key.ToString()); if (server.IsValid()) { this._servers.Add(server); } } }
private ServerSelector ParseConfigServers(XmlNodeList list ) { ServerSelector selector = new ServerSelector(); foreach (XmlNode item in list ) { if ( item.NodeType.Equals(XmlNodeType.Element) && (item.LocalName.Equals("server") || item.LocalName.Equals("add")) ) { XmlElement element = (XmlElement)item; if ( element.HasAttribute("key") && element.HasAttribute("value") ) // Old format selector.Add(element.GetAttribute("key"), element.GetAttribute("value")); else if ( element.HasAttribute("protocol") && element.HasAttribute("host") && element.HasAttribute("port") ) { // New format anmar.SharpWebMail.EmailServerInfo server = new anmar.SharpWebMail.EmailServerInfo(element.GetAttribute("protocol"), element.GetAttribute("host"), element.GetAttribute("port")); if ( element.HasAttribute("regexp") ) server.SetCondition (element.GetAttribute("regexp")); if ( element.HasAttribute("name") ) server.Name = element.GetAttribute("name"); if ( server.IsValid() ) selector.Add(server); } } } return selector; }