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
- CodeGeneratorOptions.cs
- ECDiffieHellmanCngPublicKey.cs
- StrongNameKeyPair.cs
- PropertyGridEditorPart.cs
- DocumentViewerConstants.cs
- SoapHeader.cs
- FixUp.cs
- QualifiedCellIdBoolean.cs
- DataGridViewControlCollection.cs
- CallSiteOps.cs
- EncryptedPackageFilter.cs
- PlainXmlWriter.cs
- CompilerParameters.cs
- SoapEnumAttribute.cs
- BaseTransportHeaders.cs
- XmlCustomFormatter.cs
- ObjectViewListener.cs
- AssertUtility.cs
- XmlnsCompatibleWithAttribute.cs
- SafeProcessHandle.cs
- GridViewDeletedEventArgs.cs
- IPAddress.cs
- Stopwatch.cs
- Mapping.cs
- DrawingImage.cs
- DashStyle.cs
- GeneralTransformCollection.cs
- DbConnectionPoolGroupProviderInfo.cs
- SmtpNtlmAuthenticationModule.cs
- ToolStripControlHost.cs
- StrongTypingException.cs
- NameValueSectionHandler.cs
- OdbcDataReader.cs
- MissingMethodException.cs
- ITextView.cs
- Crc32.cs
- StatusBarPanel.cs
- ParamArrayAttribute.cs
- RelationshipEnd.cs
- HttpHandlerAction.cs
- TextTreeDeleteContentUndoUnit.cs
- ErrorActivity.cs
- StrokeRenderer.cs
- TdsRecordBufferSetter.cs
- TextBoxBase.cs
- BitmapInitialize.cs
- Events.cs
- TypeLoadException.cs
- ListItemCollection.cs
- SimpleBitVector32.cs
- BitVector32.cs
- PolicyUnit.cs
- DispatcherSynchronizationContext.cs
- RawStylusSystemGestureInputReport.cs
- InlineObject.cs
- ServerValidateEventArgs.cs
- RequestStatusBarUpdateEventArgs.cs
- RoutedEvent.cs
- PatternMatcher.cs
- ValidatorCompatibilityHelper.cs
- WebPartTransformerAttribute.cs
- GradientBrush.cs
- WinEventTracker.cs
- DataGridCellInfo.cs
- SponsorHelper.cs
- ModelServiceImpl.cs
- SqlBulkCopyColumnMappingCollection.cs
- NonVisualControlAttribute.cs
- dataSvcMapFileLoader.cs
- ToolStripManager.cs
- InputReferenceExpression.cs
- ByteStorage.cs
- VSDExceptions.cs
- SID.cs
- CodeTypeReference.cs
- DeflateStreamAsyncResult.cs
- StringValueSerializer.cs
- FunctionUpdateCommand.cs
- RectIndependentAnimationStorage.cs
- infer.cs
- GlyphingCache.cs
- TimeSpanValidatorAttribute.cs
- DescendantQuery.cs
- COM2TypeInfoProcessor.cs
- FullTextLine.cs
- ListItemCollection.cs
- QilExpression.cs
- XmlCharType.cs
- NativeCppClassAttribute.cs
- TemplateControlParser.cs
- ExpandSegmentCollection.cs
- QilGenerator.cs
- AuthenticatedStream.cs
- XmlSchemaSequence.cs
- SamlAssertion.cs
- HttpStreamXmlDictionaryReader.cs
- VectorAnimationBase.cs
- InputLanguageEventArgs.cs
- XmlCharacterData.cs
- NumericUpDownAcceleration.cs