Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / Configuration / HttpModuleAction.cs / 1305376 / 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; 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 | ConfigurationPropertyOptions.IsTypeStringTransformationRequired); 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.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- BitmapEncoder.cs
- SqlCacheDependency.cs
- BitmapCache.cs
- GraphicsPathIterator.cs
- ScriptReferenceEventArgs.cs
- SessionStateContainer.cs
- DateTimeFormat.cs
- XmlSchemaIdentityConstraint.cs
- FormViewRow.cs
- MergablePropertyAttribute.cs
- InheritanceContextChangedEventManager.cs
- SmiContext.cs
- HttpResponseInternalWrapper.cs
- Point3DCollectionValueSerializer.cs
- Rijndael.cs
- ChildDocumentBlock.cs
- PrimitiveDataContract.cs
- LateBoundBitmapDecoder.cs
- DocumentPageTextView.cs
- WinEventQueueItem.cs
- SendKeys.cs
- SQLMoneyStorage.cs
- FontNamesConverter.cs
- ProxyWebPart.cs
- ScrollChrome.cs
- Console.cs
- AnnotationResource.cs
- EnumerableRowCollection.cs
- MetadataExporter.cs
- PermissionSetTriple.cs
- PartBasedPackageProperties.cs
- AuthenticatedStream.cs
- EventsTab.cs
- Encoder.cs
- ThreadAttributes.cs
- CachedFontFamily.cs
- CryptoSession.cs
- CustomAttributeFormatException.cs
- DataGridViewDataErrorEventArgs.cs
- UIElement3D.cs
- CodeLinePragma.cs
- RC2CryptoServiceProvider.cs
- ProtocolsConfigurationHandler.cs
- EncoderBestFitFallback.cs
- DataGridViewRow.cs
- GridViewColumnHeaderAutomationPeer.cs
- ControlBuilderAttribute.cs
- SHA256Managed.cs
- ImmutablePropertyDescriptorGridEntry.cs
- RowUpdatingEventArgs.cs
- EventLogPropertySelector.cs
- InertiaTranslationBehavior.cs
- ISAPIApplicationHost.cs
- SafeCryptoHandles.cs
- BooleanKeyFrameCollection.cs
- PromptBuilder.cs
- NativeMethods.cs
- FixedSOMFixedBlock.cs
- SignatureHelper.cs
- PersonalizationStateInfo.cs
- EntityKeyElement.cs
- DecimalAnimationUsingKeyFrames.cs
- odbcmetadatacollectionnames.cs
- XmlBaseWriter.cs
- XsltQilFactory.cs
- WindowVisualStateTracker.cs
- QueryContinueDragEvent.cs
- VisualTransition.cs
- TreeNodeCollectionEditor.cs
- FileSystemEventArgs.cs
- ImageAutomationPeer.cs
- DesignerCalendarAdapter.cs
- Vector3DValueSerializer.cs
- MultiPageTextView.cs
- Console.cs
- TreeViewDataItemAutomationPeer.cs
- LoopExpression.cs
- VisualStyleTypesAndProperties.cs
- WebPartConnectionsConfigureVerb.cs
- MsmqBindingMonitor.cs
- Timer.cs
- AttachmentCollection.cs
- AsyncOperationManager.cs
- Console.cs
- XmlEncoding.cs
- RegexRunnerFactory.cs
- Base64Decoder.cs
- TransactionCache.cs
- LocalizationCodeDomSerializer.cs
- NamespaceQuery.cs
- SqlUserDefinedTypeAttribute.cs
- PersonalizablePropertyEntry.cs
- PriorityBindingExpression.cs
- LinkLabelLinkClickedEvent.cs
- RtfToXamlReader.cs
- TextStore.cs
- DesignerInterfaces.cs
- WebUtil.cs
- BlobPersonalizationState.cs
- GridViewRowEventArgs.cs