Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / whidbey / QFE / ndp / fx / src / xsp / System / Web / Configuration / HttpModuleAction.cs / 3 / HttpModuleAction.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.Configuration { using System; using System.Xml; using System.Configuration; using System.Collections.Specialized; using System.Collections; using System.IO; using System.Text; using System.Web.Configuration; using System.Web.Configuration.Common; using System.Web.Util; using System.Globalization; using System.Security.Permissions; [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] public sealed class HttpModuleAction : ConfigurationElement { private static readonly ConfigurationElementProperty s_elemProperty = new ConfigurationElementProperty(new CallbackValidator(typeof(HttpModuleAction), Validate)); private static ConfigurationPropertyCollection _properties; private static readonly ConfigurationProperty _propName = new ConfigurationProperty("name", typeof(string), null, null, StdValidatorsAndConverters.NonEmptyStringValidator, ConfigurationPropertyOptions.IsRequired | ConfigurationPropertyOptions.IsKey); private static readonly ConfigurationProperty _propType = new ConfigurationProperty("type", typeof(string), String.Empty, ConfigurationPropertyOptions.IsRequired); private ModulesEntry _modualEntry; static HttpModuleAction() { // Property initialization _properties = new ConfigurationPropertyCollection(); _properties.Add(_propName); _properties.Add(_propType); } internal HttpModuleAction() { } public HttpModuleAction(String name, String type) : this() { Name = name; Type = type; _modualEntry = null; } internal string Key { get { return Name; } } protected override ConfigurationPropertyCollection Properties { get { return _properties; } } [ConfigurationProperty("name", IsRequired = true, IsKey = true, DefaultValue = "")] [StringValidator(MinLength = 1)] public string Name { get { return (string)base[_propName]; } set { base[_propName] = value; } } [ConfigurationProperty("type", IsRequired = true, DefaultValue = "")] public string Type { get { return (string)base[_propType]; } set { base[_propType] = value; } } internal string FileName { get { return ElementInformation.Properties["name"].Source; } } internal int LineNumber { get { return ElementInformation.Properties["name"].LineNumber; } } internal ModulesEntry Entry { get { try { if (_modualEntry == null) { _modualEntry = new ModulesEntry(Name, Type, _propType.Name, this); } return _modualEntry; } catch (Exception ex) { throw new ConfigurationErrorsException(ex.Message, ElementInformation.Properties[_propType.Name].Source, ElementInformation.Properties[_propType.Name].LineNumber); } } } internal static bool IsSpecialModule(String className) { return ModulesEntry.IsTypeMatch(typeof(System.Web.Security.DefaultAuthenticationModule), className); } internal static bool IsSpecialModuleName(String name) { return (StringUtil.EqualsIgnoreCase(name, "DefaultAuthentication")); } protected override ConfigurationElementProperty ElementProperty { get { return s_elemProperty; } } private static void Validate(object value) { if (value == null) { throw new ArgumentNullException("httpModule"); } HttpModuleAction elem = (HttpModuleAction)value; if (HttpModuleAction.IsSpecialModule(elem.Type)) { throw new ConfigurationErrorsException( SR.GetString(SR.Special_module_cannot_be_added_manually, elem.Type), elem.ElementInformation.Properties["type"].Source, elem.ElementInformation.Properties["type"].LineNumber); } if (HttpModuleAction.IsSpecialModuleName(elem.Name)) { throw new ConfigurationErrorsException( SR.GetString(SR.Special_module_cannot_be_added_manually, elem.Name), elem.ElementInformation.Properties["name"].Source, elem.ElementInformation.Properties["name"].LineNumber); } } } // class HttpModule } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- FileAuthorizationModule.cs
- PersonalizableAttribute.cs
- ForeignConstraint.cs
- CheckBox.cs
- NTAccount.cs
- StringHandle.cs
- DefaultPrintController.cs
- MenuItem.cs
- SingleObjectCollection.cs
- ServiceDescriptions.cs
- WindowsStartMenu.cs
- SQLSingle.cs
- FormViewRow.cs
- DesignerTransaction.cs
- ColumnPropertiesGroup.cs
- SrgsRule.cs
- ToolStripItemRenderEventArgs.cs
- StringCollection.cs
- RotateTransform.cs
- ELinqQueryState.cs
- XmlHierarchyData.cs
- BaseHashHelper.cs
- ColumnResizeUndoUnit.cs
- MouseEventArgs.cs
- MsmqEncryptionAlgorithm.cs
- TypedDataSetSchemaImporterExtension.cs
- TrustManagerPromptUI.cs
- ExpressionPrinter.cs
- TreeNodeEventArgs.cs
- LoadGrammarCompletedEventArgs.cs
- PagedControl.cs
- WebBrowserEvent.cs
- HtmlValidatorAdapter.cs
- ExpressionEvaluator.cs
- Int64Converter.cs
- CountdownEvent.cs
- ByteStream.cs
- WebRequestModuleElement.cs
- TranslateTransform.cs
- AutomationElementCollection.cs
- OpCellTreeNode.cs
- DataGridViewCellErrorTextNeededEventArgs.cs
- BuildResult.cs
- GACIdentityPermission.cs
- ConfigurationValue.cs
- DefaultProxySection.cs
- RelatedEnd.cs
- DesignerActionItem.cs
- httpstaticobjectscollection.cs
- NavigationFailedEventArgs.cs
- PagedDataSource.cs
- thaishape.cs
- HtmlHead.cs
- XmlSchemaExternal.cs
- StrongNameKeyPair.cs
- SoapElementAttribute.cs
- XmlChildEnumerator.cs
- CompiledIdentityConstraint.cs
- Button.cs
- XmlQuerySequence.cs
- NGCUIElementCollectionSerializerAsync.cs
- XmlQualifiedName.cs
- ToolStripPanelRenderEventArgs.cs
- DrawingDrawingContext.cs
- Utility.cs
- ServiceModelSectionGroup.cs
- GroupStyle.cs
- GatewayIPAddressInformationCollection.cs
- SqlMethodTransformer.cs
- UnmanagedMemoryStream.cs
- DataViewManagerListItemTypeDescriptor.cs
- NumericPagerField.cs
- IProducerConsumerCollection.cs
- BaseDataList.cs
- MimePart.cs
- MsmqIntegrationProcessProtocolHandler.cs
- TileBrush.cs
- DefaultParameterValueAttribute.cs
- Profiler.cs
- XmlCDATASection.cs
- PartialTrustVisibleAssemblyCollection.cs
- XPathDescendantIterator.cs
- D3DImage.cs
- DataChangedEventManager.cs
- PathFigureCollectionValueSerializer.cs
- StoreUtilities.cs
- AssertUtility.cs
- MarginsConverter.cs
- PbrsForward.cs
- HttpPostedFile.cs
- XmlAnyAttributeAttribute.cs
- NameSpaceExtractor.cs
- CheckBoxField.cs
- localization.cs
- HttpRequestCacheValidator.cs
- TextMarkerSource.cs
- MarshalByValueComponent.cs
- DataListCommandEventArgs.cs
- CaseInsensitiveHashCodeProvider.cs
- InvalidProgramException.cs