Code:
/ 4.0 / 4.0 / 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.
//------------------------------------------------------------------------------
//
// 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
- XPathParser.cs
- SudsCommon.cs
- ItemContainerGenerator.cs
- ComplexBindingPropertiesAttribute.cs
- RectValueSerializer.cs
- CompleteWizardStep.cs
- InheritanceUI.cs
- ImageMap.cs
- InputBinding.cs
- PostBackTrigger.cs
- FamilyCollection.cs
- PerspectiveCamera.cs
- PointAnimationClockResource.cs
- DrawingImage.cs
- CompiledRegexRunner.cs
- GridViewRowEventArgs.cs
- HierarchicalDataSourceControl.cs
- ListBindingConverter.cs
- _ListenerRequestStream.cs
- ToolTip.cs
- DiscoveryMessageSequence.cs
- DuplicateWaitObjectException.cs
- ConfigurationSectionGroup.cs
- PeerDefaultCustomResolverClient.cs
- SQLString.cs
- PropertyPathConverter.cs
- Atom10FormatterFactory.cs
- ToolStripItemCollection.cs
- TextStore.cs
- TextEditorDragDrop.cs
- Scene3D.cs
- DropDownButton.cs
- DecimalConstantAttribute.cs
- StylusCaptureWithinProperty.cs
- WebReferencesBuildProvider.cs
- _DomainName.cs
- Win32Exception.cs
- ExpressionEditorAttribute.cs
- SqlColumnizer.cs
- TextRange.cs
- TypeUsage.cs
- webbrowsersite.cs
- GridItemProviderWrapper.cs
- AspCompat.cs
- SystemUdpStatistics.cs
- AlternateViewCollection.cs
- FixedTextBuilder.cs
- XPathNodeInfoAtom.cs
- ContractAdapter.cs
- MailAddressCollection.cs
- TextFindEngine.cs
- SpecialFolderEnumConverter.cs
- ParameterBuilder.cs
- WindowsFormsEditorServiceHelper.cs
- TdsValueSetter.cs
- ObjectDataSourceEventArgs.cs
- Point4D.cs
- SafeRightsManagementEnvironmentHandle.cs
- FormCollection.cs
- SqlFileStream.cs
- SelectingProviderEventArgs.cs
- ConnectionManagementSection.cs
- LinqDataSourceHelper.cs
- ToolStripPanelCell.cs
- ArraySortHelper.cs
- _LocalDataStore.cs
- SqlNotificationEventArgs.cs
- HierarchicalDataSourceControl.cs
- FileDialogCustomPlaces.cs
- SecUtil.cs
- Expander.cs
- DataTransferEventArgs.cs
- OperationDescriptionCollection.cs
- DocumentPageView.cs
- HttpCachePolicyBase.cs
- ComboBoxItem.cs
- SecurityTokenValidationException.cs
- PipelineModuleStepContainer.cs
- DeploymentExceptionMapper.cs
- WebPartActionVerb.cs
- SqlPersonalizationProvider.cs
- NativeMethods.cs
- StorageMappingFragment.cs
- Compilation.cs
- CollectionConverter.cs
- RelationshipSet.cs
- OrderByQueryOptionExpression.cs
- XmlTypeMapping.cs
- DependencySource.cs
- EmbossBitmapEffect.cs
- CombinedGeometry.cs
- AssemblyAssociatedContentFileAttribute.cs
- ServiceBuildProvider.cs
- WsrmMessageInfo.cs
- TextRangeSerialization.cs
- PreservationFileWriter.cs
- RectangleF.cs
- FixedDocument.cs
- ActivationService.cs
- GlobalProxySelection.cs