Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / DEVDIV / depot / DevDiv / releases / 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. //------------------------------------------------------------------------------ //// 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
- CharacterHit.cs
- EntitySetBaseCollection.cs
- ConfigurationLocation.cs
- NumberSubstitution.cs
- LinkedResourceCollection.cs
- OleDbParameterCollection.cs
- QualificationDataAttribute.cs
- RightsManagementEncryptionTransform.cs
- UIHelper.cs
- Variable.cs
- ScriptingWebServicesSectionGroup.cs
- NameValueCollection.cs
- CheckedListBox.cs
- Soap12FormatExtensions.cs
- XmlIncludeAttribute.cs
- TargetConverter.cs
- RequestCacheEntry.cs
- KeyNameIdentifierClause.cs
- CodeDomConfigurationHandler.cs
- BitmapCodecInfo.cs
- ManipulationVelocities.cs
- precedingquery.cs
- SpecularMaterial.cs
- Authorization.cs
- EdmPropertyAttribute.cs
- MiniParameterInfo.cs
- SchemaCompiler.cs
- PageBuildProvider.cs
- PostBackTrigger.cs
- ListBoxItem.cs
- Thumb.cs
- FlowPosition.cs
- OutKeywords.cs
- SqlDataRecord.cs
- VariableModifiersHelper.cs
- RelationshipDetailsCollection.cs
- BmpBitmapDecoder.cs
- TakeOrSkipWhileQueryOperator.cs
- RemotingHelper.cs
- Message.cs
- ImpersonationContext.cs
- SortDescription.cs
- SoapAttributeOverrides.cs
- MimeParameters.cs
- CharStorage.cs
- ImageFormatConverter.cs
- SystemThemeKey.cs
- complextypematerializer.cs
- SafeArrayTypeMismatchException.cs
- HTTPNotFoundHandler.cs
- InvokeGenerator.cs
- RecommendedAsConfigurableAttribute.cs
- SqlNodeTypeOperators.cs
- GlobalizationSection.cs
- IdleTimeoutMonitor.cs
- StatusBarAutomationPeer.cs
- BufferedWebEventProvider.cs
- DataBindingHandlerAttribute.cs
- SmiRecordBuffer.cs
- StreamInfo.cs
- HttpRequestCacheValidator.cs
- Error.cs
- EntitySqlQueryCacheKey.cs
- XmlDataDocument.cs
- MessageBox.cs
- Stack.cs
- WindowHideOrCloseTracker.cs
- RequestCachingSection.cs
- BasicCommandTreeVisitor.cs
- BinaryObjectWriter.cs
- ConnectionManagementElement.cs
- WorkflowInstanceTerminatedRecord.cs
- SQLMoney.cs
- InkCanvasInnerCanvas.cs
- InputBuffer.cs
- Profiler.cs
- TypeBinaryExpression.cs
- AnimatedTypeHelpers.cs
- BindingWorker.cs
- InvalidFilterCriteriaException.cs
- CompatibleComparer.cs
- SelectionUIHandler.cs
- CodeDomExtensionMethods.cs
- EntityTypeBase.cs
- ExpressionVisitorHelpers.cs
- TdsValueSetter.cs
- PopupRootAutomationPeer.cs
- TypeResolver.cs
- InstanceNotReadyException.cs
- SecUtil.cs
- SqlMethodAttribute.cs
- AnnotationStore.cs
- ErrorFormatterPage.cs
- ListControlStringCollectionEditor.cs
- EpmContentSerializerBase.cs
- InplaceBitmapMetadataWriter.cs
- FtpCachePolicyElement.cs
- XmlSignatureProperties.cs
- CollectionBuilder.cs
- DateTimeUtil.cs