Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / xsp / System / Web / Configuration / ProtocolsConfiguration.cs / 1 / 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; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ // // 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; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- XmlDocumentType.cs
- UpDownEvent.cs
- ShapingEngine.cs
- bindurihelper.cs
- AstTree.cs
- RangeValueProviderWrapper.cs
- MeasureItemEvent.cs
- PtsHost.cs
- GestureRecognizer.cs
- GenerateScriptTypeAttribute.cs
- RootDesignerSerializerAttribute.cs
- WebServiceTypeData.cs
- ArrayTypeMismatchException.cs
- WebCategoryAttribute.cs
- ConfigXmlElement.cs
- MouseOverProperty.cs
- RoleBoolean.cs
- TextBlockAutomationPeer.cs
- updatecommandorderer.cs
- GB18030Encoding.cs
- FontSourceCollection.cs
- Int32AnimationBase.cs
- XmlSchemaComplexContentRestriction.cs
- TableStyle.cs
- SchemaNamespaceManager.cs
- XmlSerializerVersionAttribute.cs
- BrushConverter.cs
- EntityCommandCompilationException.cs
- SamlDelegatingWriter.cs
- HttpListenerElement.cs
- Activity.cs
- XmlBinaryReader.cs
- Main.cs
- EventWaitHandle.cs
- AdornedElementPlaceholder.cs
- XDRSchema.cs
- ToolStripContentPanelRenderEventArgs.cs
- MetaModel.cs
- Literal.cs
- DelayedRegex.cs
- ArrayItemValue.cs
- ImageEditor.cs
- HttpRawResponse.cs
- SoapAttributeOverrides.cs
- ObjectHelper.cs
- indexingfiltermarshaler.cs
- DataSourceCacheDurationConverter.cs
- XmlCountingReader.cs
- ListenerElementsCollection.cs
- StreamInfo.cs
- GB18030Encoding.cs
- ImageCodecInfoPrivate.cs
- FontUnitConverter.cs
- ListBoxDesigner.cs
- CodeParameterDeclarationExpressionCollection.cs
- NativeMethods.cs
- ProgressBar.cs
- StylusPointProperty.cs
- FixedNode.cs
- ComNativeDescriptor.cs
- BypassElementCollection.cs
- MenuItemStyle.cs
- CapabilitiesRule.cs
- Knowncolors.cs
- HttpListenerResponse.cs
- PublisherMembershipCondition.cs
- DBSqlParserTableCollection.cs
- Transform3DCollection.cs
- EqualityComparer.cs
- PerformanceCounterPermissionAttribute.cs
- RuntimeConfigLKG.cs
- AssociationEndMember.cs
- SqlProviderServices.cs
- Timer.cs
- DigestTraceRecordHelper.cs
- TaiwanLunisolarCalendar.cs
- _AuthenticationState.cs
- WebPartCatalogAddVerb.cs
- Keyboard.cs
- ToolboxItemAttribute.cs
- HttpResponse.cs
- ResourceDictionary.cs
- DataServiceRequestOfT.cs
- RuntimeEnvironment.cs
- Int32RectValueSerializer.cs
- StrokeCollectionConverter.cs
- ToolBar.cs
- OrderedDictionary.cs
- ClientTarget.cs
- TextAnchor.cs
- AuthenticationModulesSection.cs
- CqlWriter.cs
- OutOfProcStateClientManager.cs
- SQLMoneyStorage.cs
- ParamArrayAttribute.cs
- SqlTriggerAttribute.cs
- FillErrorEventArgs.cs
- ArrayList.cs
- XmlSchemaSet.cs
- GAC.cs