Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / xsp / System / Web / Configuration / ProtocolsConfiguration.cs / 2 / ProtocolsConfiguration.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.Configuration { using System.IO; using System.Runtime.Serialization.Formatters; using System.Threading; using System.Runtime.InteropServices; using System.ComponentModel; using System.Collections; using System.Configuration; using System.Reflection; using System.Globalization; using System.Web.Hosting; using System.Web.Security; using System.Web.Util; using System.Xml; internal class ProtocolsConfiguration { private Hashtable _protocolEntries = new Hashtable(); internal ProtocolsConfiguration(XmlNode section) { // process XML section in order and apply the directives HandlerBase.CheckForUnrecognizedAttributes(section); foreach (XmlNode child in section.ChildNodes) { // skip whitespace and comments if (IsIgnorableAlsoCheckForNonElement(child)) continue; // processelements if (child.Name == "add") { String id = HandlerBase.RemoveRequiredAttribute(child, "id"); String phType = HandlerBase.RemoveRequiredAttribute(child, "processHandlerType"); String ahType = HandlerBase.RemoveRequiredAttribute(child, "appDomainHandlerType"); bool validate = true; HandlerBase.GetAndRemoveBooleanAttribute(child, "validate", ref validate); HandlerBase.CheckForUnrecognizedAttributes(child); HandlerBase.CheckForNonCommentChildNodes(child); // check duplicate Id /* TEMPORARY allow duplicates for easy Indigo machine.config update if (_protocolEntries[id] != null) { throw new ConfigurationErrorsException( SR.GetString(SR.Dup_protocol_id, id), child); } */ // add entry /* TEMPORARY hide errors and ignore bad tags to let breaking changes through */ try { _protocolEntries[id] = new ProtocolsConfigurationEntry( id, phType, ahType, validate, ConfigurationErrorsException.GetFilename(child), ConfigurationErrorsException.GetLineNumber(child)); } catch { } } else { HandlerBase.ThrowUnrecognizedElement(child); } } } private bool IsIgnorableAlsoCheckForNonElement(XmlNode node) { if (node.NodeType == XmlNodeType.Comment || node.NodeType == XmlNodeType.Whitespace) { return true; } if (node.NodeType != XmlNodeType.Element) { throw new ConfigurationErrorsException( SR.GetString(SR.Config_base_elements_only), node); } return false; } } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- COAUTHINFO.cs
- DataGridViewElement.cs
- ObjectDataSource.cs
- CallbackCorrelationInitializer.cs
- InvalidProgramException.cs
- SqlConnectionPoolProviderInfo.cs
- XPathChildIterator.cs
- SettingsSection.cs
- BigInt.cs
- WebPartEditorApplyVerb.cs
- EncodingInfo.cs
- Accessible.cs
- EntitySqlQueryState.cs
- XamlFilter.cs
- ReferenceService.cs
- DataGridRelationshipRow.cs
- Command.cs
- IgnoreSectionHandler.cs
- EntityDataSourceView.cs
- XmlDocumentFragment.cs
- SpeechUI.cs
- Exceptions.cs
- Model3DCollection.cs
- StorageSetMapping.cs
- ProcessManager.cs
- StringConcat.cs
- ColorConvertedBitmap.cs
- TimeStampChecker.cs
- ReadOnlyDictionary.cs
- XmlName.cs
- BasePattern.cs
- InvariantComparer.cs
- OleDbCommand.cs
- TraceListeners.cs
- WindowsTab.cs
- RubberbandSelector.cs
- AstTree.cs
- AppDomain.cs
- CorePropertiesFilter.cs
- CommandConverter.cs
- XLinq.cs
- DataListCommandEventArgs.cs
- ObsoleteAttribute.cs
- FieldBuilder.cs
- DataColumnChangeEvent.cs
- WsatProxy.cs
- Cell.cs
- SizeF.cs
- NeutralResourcesLanguageAttribute.cs
- SQLConvert.cs
- PermissionToken.cs
- ProfileParameter.cs
- SpeechAudioFormatInfo.cs
- ClonableStack.cs
- FormatConvertedBitmap.cs
- HttpConfigurationSystem.cs
- TemplateManager.cs
- util.cs
- IDReferencePropertyAttribute.cs
- LogSwitch.cs
- SerializationEventsCache.cs
- PassportAuthenticationEventArgs.cs
- StructuralObject.cs
- CommonObjectSecurity.cs
- SimpleFieldTemplateUserControl.cs
- SqlRowUpdatedEvent.cs
- Formatter.cs
- ReliabilityContractAttribute.cs
- DoubleLinkList.cs
- GridToolTip.cs
- Animatable.cs
- ValidationErrorInfo.cs
- EndOfStreamException.cs
- TextEmbeddedObject.cs
- InstanceDataCollectionCollection.cs
- TriggerCollection.cs
- MediaSystem.cs
- BidOverLoads.cs
- XmlObjectSerializerWriteContext.cs
- NotImplementedException.cs
- DatatypeImplementation.cs
- ObjectDataSourceEventArgs.cs
- BoundField.cs
- PrtTicket_Base.cs
- CommandHelpers.cs
- AnnotationAdorner.cs
- AttributeQuery.cs
- CryptoKeySecurity.cs
- DictionaryGlobals.cs
- EndOfStreamException.cs
- EmptyEnumerator.cs
- ArrangedElementCollection.cs
- ToolStripItemCollection.cs
- ToolStripSplitStackLayout.cs
- SafeProcessHandle.cs
- WebBrowserBase.cs
- WebBrowserSiteBase.cs
- COM2ExtendedTypeConverter.cs
- PrinterUnitConvert.cs
- TableLayout.cs