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
- FrameworkElementAutomationPeer.cs
- StatusBarItemAutomationPeer.cs
- brushes.cs
- HtmlInputImage.cs
- RequiredArgumentAttribute.cs
- HttpCapabilitiesSectionHandler.cs
- DataGridRowEventArgs.cs
- DependencyObjectType.cs
- FileSystemWatcher.cs
- Size3D.cs
- Range.cs
- EncryptedKeyIdentifierClause.cs
- MessageParameterAttribute.cs
- UICuesEvent.cs
- ACE.cs
- WinFormsUtils.cs
- ProgressBarAutomationPeer.cs
- errorpatternmatcher.cs
- DefaultBinder.cs
- RequestQueue.cs
- BaseDataListComponentEditor.cs
- OleDragDropHandler.cs
- Rect3D.cs
- ReflectionTypeLoadException.cs
- Optimizer.cs
- StylusPointProperty.cs
- XsltOutput.cs
- ReadOnlyObservableCollection.cs
- HelpKeywordAttribute.cs
- Bidi.cs
- KeyGesture.cs
- WindowsMenu.cs
- CommandHelpers.cs
- DynamicArgumentDialog.cs
- Bezier.cs
- CollectionChangedEventManager.cs
- IdnMapping.cs
- RIPEMD160Managed.cs
- TemplateComponentConnector.cs
- Identifier.cs
- DBConnection.cs
- InplaceBitmapMetadataWriter.cs
- BrowserDefinitionCollection.cs
- TransformerInfo.cs
- TransformPattern.cs
- InstancePersistenceEvent.cs
- DateTimeValueSerializerContext.cs
- SettingsAttributeDictionary.cs
- TextBoxRenderer.cs
- HtmlDocument.cs
- FlowNode.cs
- SecurityPolicySection.cs
- FileCodeGroup.cs
- MailAddress.cs
- ConfigurationSectionGroupCollection.cs
- ConfigXmlWhitespace.cs
- EventMappingSettings.cs
- AccessControlEntry.cs
- Win32NamedPipes.cs
- DateTimePicker.cs
- PromptStyle.cs
- ScrollBar.cs
- MenuItemStyleCollection.cs
- DispatcherHooks.cs
- ContractMapping.cs
- MetadataWorkspace.cs
- HiddenField.cs
- XmlUrlResolver.cs
- HttpCachePolicy.cs
- WpfWebRequestHelper.cs
- localization.cs
- EditBehavior.cs
- OverrideMode.cs
- GenericTypeParameterBuilder.cs
- Baml2006ReaderContext.cs
- LogicalExpr.cs
- AtlasWeb.Designer.cs
- PolicyException.cs
- EngineSiteSapi.cs
- SimpleType.cs
- AstTree.cs
- BaseTemplateParser.cs
- DropShadowEffect.cs
- CodeTryCatchFinallyStatement.cs
- TimeSpanMinutesConverter.cs
- NavigationHelper.cs
- OLEDB_Util.cs
- EnumBuilder.cs
- sqlmetadatafactory.cs
- XmlQuerySequence.cs
- HotSpotCollection.cs
- DataServiceRequestException.cs
- TraceHandler.cs
- DetailsView.cs
- DbInsertCommandTree.cs
- LogicalCallContext.cs
- DrawingCollection.cs
- RemoteArgument.cs
- GraphicsState.cs
- WorkflowTransactionOptions.cs