public object Create(object parent, object configContext, System.Xml.XmlNode section) { NameValueSectionHandler handler = new NameValueSectionHandler(); OrderedHashTable schemes = new OrderedHashTable(); NameValueCollection options = (NameValueCollection) handler.Create(parent, configContext, section); if (options != null) { foreach (string key in options.Keys) { Type type = Type.GetType(options[key]); if (type == null) { throw new ConfigurationException(string.Format("Type '{0}' not found", key)); } if (!typeof(IAMQCallbackHandler).IsAssignableFrom(type)) { throw new ConfigurationException(string.Format("Type '{0}' does not implement IAMQCallbackHandler", key)); } schemes.Add(key, type); } } return(schemes); }
public object Create(object parent, object configContext, System.Xml.XmlNode section) { NameValueSectionHandler handler = new NameValueSectionHandler(); OrderedHashTable schemes = new OrderedHashTable(); NameValueCollection options = (NameValueCollection) handler.Create(parent, configContext, section); if ( options != null ) { foreach ( string key in options.Keys ) { Type type = Type.GetType(options[key]); if ( type == null ) throw new ConfigurationException(string.Format("Type '{0}' not found", key)); if ( !typeof(IAMQCallbackHandler).IsAssignableFrom(type) ) throw new ConfigurationException(string.Format("Type '{0}' does not implement IAMQCallbackHandler", key)); schemes.Add(key, type); } } return schemes; }