Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Net / System / Net / Configuration / ServicePointManagerElement.cs / 1305376 / ServicePointManagerElement.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Net.Configuration { using System; using System.Configuration; using System.Net.Security; using System.Reflection; using System.Security.Permissions; public sealed class ServicePointManagerElement : ConfigurationElement { public ServicePointManagerElement() { this.properties.Add(this.checkCertificateName); this.properties.Add(this.checkCertificateRevocationList); this.properties.Add(this.dnsRefreshTimeout); this.properties.Add(this.enableDnsRoundRobin); this.properties.Add(this.encryptionPolicy); this.properties.Add(this.expect100Continue); this.properties.Add(this.useNagleAlgorithm); } protected override void PostDeserialize() { // Perf optimization. If the configuration is coming from machine.config // It is safe and we don't need to check for permissions. if (EvaluationContext.IsMachineLevel) return; PropertyInformation[] protectedProperties = { ElementInformation.Properties[ConfigurationStrings.CheckCertificateName], ElementInformation.Properties[ConfigurationStrings.CheckCertificateRevocationList] }; foreach (PropertyInformation property in protectedProperties) if (property.ValueOrigin == PropertyValueOrigin.SetHere) { try { ExceptionHelper.UnmanagedPermission.Demand(); } catch (Exception exception) { throw new ConfigurationErrorsException( SR.GetString(SR.net_config_property_permission, property.Name), exception); } } } [ConfigurationProperty(ConfigurationStrings.CheckCertificateName, DefaultValue = true)] public bool CheckCertificateName { get { return (bool)this[this.checkCertificateName]; } set { this[this.checkCertificateName] = value; } } [ConfigurationProperty(ConfigurationStrings.CheckCertificateRevocationList, DefaultValue = false)] public bool CheckCertificateRevocationList { get { return (bool)this[this.checkCertificateRevocationList]; } set { this[this.checkCertificateRevocationList] = value; } } [ConfigurationProperty(ConfigurationStrings.DnsRefreshTimeout, DefaultValue = (int)( 2 * 60 * 1000))] public int DnsRefreshTimeout { get { return (int)this[this.dnsRefreshTimeout]; } set { this[this.dnsRefreshTimeout] = value; } } [ConfigurationProperty(ConfigurationStrings.EnableDnsRoundRobin, DefaultValue = false)] public bool EnableDnsRoundRobin { get { return (bool)this[this.enableDnsRoundRobin]; } set { this[this.enableDnsRoundRobin] = value; } } [ConfigurationProperty(ConfigurationStrings.EncryptionPolicy, DefaultValue = EncryptionPolicy.RequireEncryption)] public EncryptionPolicy EncryptionPolicy { get { return (EncryptionPolicy)this[this.encryptionPolicy]; } set { this[this.encryptionPolicy] = value; } } [ConfigurationProperty(ConfigurationStrings.Expect100Continue, DefaultValue = true)] public bool Expect100Continue { get { return (bool)this[this.expect100Continue]; } set { this[this.expect100Continue] = value; } } [ConfigurationProperty(ConfigurationStrings.UseNagleAlgorithm, DefaultValue=true)] public bool UseNagleAlgorithm { get { return (bool)this[this.useNagleAlgorithm]; } set { this[this.useNagleAlgorithm] = value; } } protected override ConfigurationPropertyCollection Properties { get { return this.properties; } } ConfigurationPropertyCollection properties = new ConfigurationPropertyCollection(); readonly ConfigurationProperty checkCertificateName = new ConfigurationProperty(ConfigurationStrings.CheckCertificateName, typeof(bool), true, ConfigurationPropertyOptions.None); readonly ConfigurationProperty checkCertificateRevocationList = new ConfigurationProperty(ConfigurationStrings.CheckCertificateRevocationList, typeof(bool), false, ConfigurationPropertyOptions.None); readonly ConfigurationProperty dnsRefreshTimeout = new ConfigurationProperty(ConfigurationStrings.DnsRefreshTimeout, typeof(int), 2 * 60 * 1000, null, new TimeoutValidator(true), ConfigurationPropertyOptions.None); readonly ConfigurationProperty enableDnsRoundRobin = new ConfigurationProperty(ConfigurationStrings.EnableDnsRoundRobin, typeof(bool), false, ConfigurationPropertyOptions.None); readonly ConfigurationProperty encryptionPolicy = new ConfigurationProperty(ConfigurationStrings.EncryptionPolicy, typeof(EncryptionPolicy), EncryptionPolicy.RequireEncryption, ConfigurationPropertyOptions.None); readonly ConfigurationProperty expect100Continue = new ConfigurationProperty(ConfigurationStrings.Expect100Continue, typeof(bool), true, ConfigurationPropertyOptions.None); readonly ConfigurationProperty useNagleAlgorithm = new ConfigurationProperty(ConfigurationStrings.UseNagleAlgorithm, typeof(bool), true, ConfigurationPropertyOptions.None); } } // 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
- Trigger.cs
- IPHostEntry.cs
- UnsafeMethods.cs
- FilteredXmlReader.cs
- RepeaterItemEventArgs.cs
- SqlNodeAnnotation.cs
- PersistenceTypeAttribute.cs
- ScopelessEnumAttribute.cs
- SchemaAttDef.cs
- AccessDataSourceWizardForm.cs
- Nullable.cs
- EventLogTraceListener.cs
- RTLAwareMessageBox.cs
- IISMapPath.cs
- WebPartManager.cs
- XsdDateTime.cs
- ObjectCacheSettings.cs
- DataGridViewAutoSizeColumnModeEventArgs.cs
- WindowPattern.cs
- XmlChildNodes.cs
- COMException.cs
- CompModSwitches.cs
- keycontainerpermission.cs
- IOThreadTimer.cs
- CookieParameter.cs
- SourceElementsCollection.cs
- Bold.cs
- ClientScriptManager.cs
- SByteStorage.cs
- Vector.cs
- LoginView.cs
- PingOptions.cs
- Configuration.cs
- MailDefinitionBodyFileNameEditor.cs
- AssemblyName.cs
- DesignerCapabilities.cs
- OrderedDictionary.cs
- WebControlAdapter.cs
- FlagsAttribute.cs
- TextRangeProviderWrapper.cs
- SecurityCriticalDataForSet.cs
- TextTreeExtractElementUndoUnit.cs
- QueryBranchOp.cs
- HeaderedItemsControl.cs
- CollectionType.cs
- AnnotationHighlightLayer.cs
- SqlCacheDependencySection.cs
- SyncMethodInvoker.cs
- SHA1Managed.cs
- BinaryReader.cs
- XsltFunctions.cs
- RectangleConverter.cs
- FamilyMap.cs
- HttpTransportManager.cs
- PathBox.cs
- TemplateContentLoader.cs
- DataContractSerializerOperationGenerator.cs
- GrowingArray.cs
- EventSetterHandlerConverter.cs
- UrlMappingCollection.cs
- ClientSettingsSection.cs
- ValidationErrorInfo.cs
- Panel.cs
- CreateInstanceBinder.cs
- cookiecollection.cs
- StrongNameIdentityPermission.cs
- WindowsFormsHostPropertyMap.cs
- ZipIOCentralDirectoryBlock.cs
- log.cs
- ObjectDataSource.cs
- WmlPanelAdapter.cs
- ControlBindingsConverter.cs
- ControlAdapter.cs
- MailMessageEventArgs.cs
- MimeImporter.cs
- AttributedMetaModel.cs
- CellIdBoolean.cs
- TemplateKey.cs
- WebPartDisplayModeEventArgs.cs
- LinkDescriptor.cs
- Cloud.cs
- HuffModule.cs
- DocumentReference.cs
- WindowsIdentity.cs
- ChannelProtectionRequirements.cs
- dataprotectionpermission.cs
- Dictionary.cs
- DataContractSerializerMessageContractImporter.cs
- WindowsToolbarAsMenu.cs
- Console.cs
- TimeoutTimer.cs
- CommandField.cs
- MD5.cs
- GridViewUpdatedEventArgs.cs
- SpAudioStreamWrapper.cs
- TableCell.cs
- PowerModeChangedEventArgs.cs
- SystemException.cs
- PropertyIDSet.cs
- InstanceDataCollection.cs