Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / 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
- AnimationTimeline.cs
- CompilerCollection.cs
- AttributeProviderAttribute.cs
- SiteMapNodeItemEventArgs.cs
- WebProxyScriptElement.cs
- ThicknessConverter.cs
- SocketPermission.cs
- CategoryList.cs
- webproxy.cs
- FixedDSBuilder.cs
- Parallel.cs
- _FixedSizeReader.cs
- MessageCredentialType.cs
- AnnotationResourceCollection.cs
- WindowsTokenRoleProvider.cs
- ToolStripAdornerWindowService.cs
- DataContext.cs
- ServicePoint.cs
- CheckBoxPopupAdapter.cs
- sitestring.cs
- InputReportEventArgs.cs
- ProcessHostConfigUtils.cs
- SettingsPropertyCollection.cs
- AuditLevel.cs
- GestureRecognitionResult.cs
- XmlSchemaElement.cs
- QilTypeChecker.cs
- IntPtr.cs
- TrackingRecord.cs
- DBConnection.cs
- __ConsoleStream.cs
- TransportContext.cs
- DSACryptoServiceProvider.cs
- DropSourceBehavior.cs
- SqlDataSourceCache.cs
- TableItemStyle.cs
- WebPartUserCapability.cs
- NetworkInterface.cs
- ChannelManager.cs
- DataRow.cs
- Assert.cs
- StringFreezingAttribute.cs
- SecurityDescriptor.cs
- ListViewDeletedEventArgs.cs
- WebPartDisplayMode.cs
- ReachIDocumentPaginatorSerializer.cs
- WindowsPen.cs
- TextRangeEditTables.cs
- ContainerAction.cs
- DataGridViewImageCell.cs
- RenderData.cs
- WsdlBuildProvider.cs
- PolicyLevel.cs
- DesigntimeLicenseContext.cs
- ScriptDescriptor.cs
- ReadOnlyCollection.cs
- UriParserTemplates.cs
- __FastResourceComparer.cs
- HandlerFactoryCache.cs
- UnsettableComboBox.cs
- SafeMILHandle.cs
- AttributeQuery.cs
- DesignerSerializationOptionsAttribute.cs
- Mapping.cs
- XmlAttribute.cs
- ConfigurationProperty.cs
- SynchronizationLockException.cs
- MulticastNotSupportedException.cs
- WorkflowDataContext.cs
- ColumnCollection.cs
- SettingsAttributeDictionary.cs
- HttpResponseInternalWrapper.cs
- CompletionCallbackWrapper.cs
- PointAnimationBase.cs
- AutomationPatternInfo.cs
- ValidationEventArgs.cs
- PeerNameRecord.cs
- SourceSwitch.cs
- Thickness.cs
- ContextMenuAutomationPeer.cs
- SamlAssertionDirectKeyIdentifierClause.cs
- DecoderBestFitFallback.cs
- AdornedElementPlaceholder.cs
- ImageButton.cs
- XmlComplianceUtil.cs
- TextTreeTextElementNode.cs
- FontStyle.cs
- BadImageFormatException.cs
- DataPagerCommandEventArgs.cs
- ToolStripItemTextRenderEventArgs.cs
- ServiceModelSecurityTokenRequirement.cs
- EncodingDataItem.cs
- DescendantBaseQuery.cs
- SettingsPropertyIsReadOnlyException.cs
- ImageSource.cs
- DbProviderFactory.cs
- ProgramNode.cs
- LineProperties.cs
- InvokeCompletedEventArgs.cs
- Helpers.cs