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
- HttpProfileGroupBase.cs
- X509ClientCertificateCredentialsElement.cs
- filewebrequest.cs
- ErrorTableItemStyle.cs
- XDRSchema.cs
- ColorBlend.cs
- PrincipalPermission.cs
- Visual3DCollection.cs
- DesignTimeVisibleAttribute.cs
- RequestContextBase.cs
- PenCursorManager.cs
- CFStream.cs
- X509CertificateChain.cs
- PartialList.cs
- TransformationRules.cs
- RelationshipEnd.cs
- MissingMethodException.cs
- TimerTable.cs
- ConfigXmlReader.cs
- _ListenerResponseStream.cs
- KeyInterop.cs
- XmlSchemaObjectCollection.cs
- ServiceElement.cs
- GPStream.cs
- DesignerRegionCollection.cs
- ArgIterator.cs
- OrderedEnumerableRowCollection.cs
- DoubleAnimationUsingPath.cs
- PipelineModuleStepContainer.cs
- OptimizerPatterns.cs
- BufferAllocator.cs
- UserNameSecurityTokenProvider.cs
- WebBrowsableAttribute.cs
- __Filters.cs
- EncryptRequest.cs
- InputProcessorProfiles.cs
- remotingproxy.cs
- GeneralTransform3DTo2DTo3D.cs
- AspCompat.cs
- IntSecurity.cs
- DocComment.cs
- CalendarTable.cs
- DataGridViewColumnCollectionDialog.cs
- UIAgentCrashedException.cs
- unsafeIndexingFilterStream.cs
- SymbolDocumentInfo.cs
- ProtocolViolationException.cs
- EdmPropertyAttribute.cs
- PassportIdentity.cs
- SelectedDatesCollection.cs
- Rotation3DAnimationUsingKeyFrames.cs
- XmlSchemaInfo.cs
- XsltLoader.cs
- TableRow.cs
- DiagnosticEventProvider.cs
- Clock.cs
- JsonQueryStringConverter.cs
- RepeaterItem.cs
- TreeNode.cs
- InputLanguageProfileNotifySink.cs
- ItemChangedEventArgs.cs
- TextServicesHost.cs
- DetailsViewPageEventArgs.cs
- _Events.cs
- DefinitionBase.cs
- BaseUriHelper.cs
- FlowDocumentScrollViewer.cs
- StopRoutingHandler.cs
- TextElement.cs
- Trace.cs
- PageSettings.cs
- UpdateTracker.cs
- ActivityDesignerLayoutSerializers.cs
- ChangeBlockUndoRecord.cs
- _HelperAsyncResults.cs
- ReadContentAsBinaryHelper.cs
- ElementHostAutomationPeer.cs
- BufferedMessageWriter.cs
- CodeTypeConstructor.cs
- DetailsViewInsertedEventArgs.cs
- ModulesEntry.cs
- StructuredType.cs
- QueryableFilterRepeater.cs
- NetworkStream.cs
- DataMemberConverter.cs
- Configuration.cs
- CodeAccessSecurityEngine.cs
- SqlConnection.cs
- MetadataCollection.cs
- PersistChildrenAttribute.cs
- UIElement.cs
- TypeLoadException.cs
- StopStoryboard.cs
- SchemaLookupTable.cs
- AutoGeneratedFieldProperties.cs
- JavascriptCallbackMessageInspector.cs
- httpapplicationstate.cs
- XmlSchemaInfo.cs
- VerificationAttribute.cs
- AttributeEmitter.cs