Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / Net / System / Net / Configuration / HttpWebRequestElement.cs / 1 / HttpWebRequestElement.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Net.Configuration
{
using System;
using System.Configuration;
using System.Reflection;
using System.Security.Permissions;
public sealed class HttpWebRequestElement : ConfigurationElement
{
public HttpWebRequestElement()
{
this.properties.Add(this.maximumResponseHeadersLength);
this.properties.Add(this.maximumErrorResponseLength);
this.properties.Add(this.maximumUnauthorizedUploadLength);
this.properties.Add(this.useUnsafeHeaderParsing);
}
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.MaximumResponseHeadersLength],
ElementInformation.Properties[ConfigurationStrings.MaximumErrorResponseLength]
};
foreach (PropertyInformation property in protectedProperties)
if (property.ValueOrigin == PropertyValueOrigin.SetHere)
{
try {
ExceptionHelper.WebPermissionUnrestricted.Demand();
} catch (Exception exception) {
throw new ConfigurationErrorsException(
SR.GetString(SR.net_config_property_permission,
property.Name),
exception);
}
}
}
protected override ConfigurationPropertyCollection Properties
{
get
{
return this.properties;
}
}
[ConfigurationProperty(ConfigurationStrings.maximumUnauthorizedUploadLength, DefaultValue=(int)(-1))]
public int MaximumUnauthorizedUploadLength
{
get { return (int)this[this.maximumUnauthorizedUploadLength]; }
set { this[this.maximumUnauthorizedUploadLength] = value; }
}
[ConfigurationProperty(ConfigurationStrings.MaximumErrorResponseLength, DefaultValue=(int)(64))]
public int MaximumErrorResponseLength
{
get { return (int)this[this.maximumErrorResponseLength]; }
set { this[this.maximumErrorResponseLength] = value; }
}
[ConfigurationProperty(ConfigurationStrings.MaximumResponseHeadersLength, DefaultValue= 64)]
public int MaximumResponseHeadersLength
{
get { return (int)this[this.maximumResponseHeadersLength]; }
set { this[this.maximumResponseHeadersLength] = value; }
}
[ConfigurationProperty(ConfigurationStrings.UseUnsafeHeaderParsing, DefaultValue= false)]
public bool UseUnsafeHeaderParsing
{
get { return (bool) this[this.useUnsafeHeaderParsing]; }
set { this[this.useUnsafeHeaderParsing] = value; }
}
ConfigurationPropertyCollection properties = new ConfigurationPropertyCollection();
readonly ConfigurationProperty maximumResponseHeadersLength =
new ConfigurationProperty(ConfigurationStrings.MaximumResponseHeadersLength,
typeof(int),
64,
ConfigurationPropertyOptions.None);
readonly ConfigurationProperty maximumErrorResponseLength =
new ConfigurationProperty(ConfigurationStrings.MaximumErrorResponseLength,
typeof(int),
64,
ConfigurationPropertyOptions.None);
readonly ConfigurationProperty maximumUnauthorizedUploadLength =
new ConfigurationProperty(ConfigurationStrings.maximumUnauthorizedUploadLength,
typeof(int),
-1,
ConfigurationPropertyOptions.None);
readonly ConfigurationProperty useUnsafeHeaderParsing =
new ConfigurationProperty(ConfigurationStrings.UseUnsafeHeaderParsing,
typeof(bool),
false,
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.Reflection;
using System.Security.Permissions;
public sealed class HttpWebRequestElement : ConfigurationElement
{
public HttpWebRequestElement()
{
this.properties.Add(this.maximumResponseHeadersLength);
this.properties.Add(this.maximumErrorResponseLength);
this.properties.Add(this.maximumUnauthorizedUploadLength);
this.properties.Add(this.useUnsafeHeaderParsing);
}
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.MaximumResponseHeadersLength],
ElementInformation.Properties[ConfigurationStrings.MaximumErrorResponseLength]
};
foreach (PropertyInformation property in protectedProperties)
if (property.ValueOrigin == PropertyValueOrigin.SetHere)
{
try {
ExceptionHelper.WebPermissionUnrestricted.Demand();
} catch (Exception exception) {
throw new ConfigurationErrorsException(
SR.GetString(SR.net_config_property_permission,
property.Name),
exception);
}
}
}
protected override ConfigurationPropertyCollection Properties
{
get
{
return this.properties;
}
}
[ConfigurationProperty(ConfigurationStrings.maximumUnauthorizedUploadLength, DefaultValue=(int)(-1))]
public int MaximumUnauthorizedUploadLength
{
get { return (int)this[this.maximumUnauthorizedUploadLength]; }
set { this[this.maximumUnauthorizedUploadLength] = value; }
}
[ConfigurationProperty(ConfigurationStrings.MaximumErrorResponseLength, DefaultValue=(int)(64))]
public int MaximumErrorResponseLength
{
get { return (int)this[this.maximumErrorResponseLength]; }
set { this[this.maximumErrorResponseLength] = value; }
}
[ConfigurationProperty(ConfigurationStrings.MaximumResponseHeadersLength, DefaultValue= 64)]
public int MaximumResponseHeadersLength
{
get { return (int)this[this.maximumResponseHeadersLength]; }
set { this[this.maximumResponseHeadersLength] = value; }
}
[ConfigurationProperty(ConfigurationStrings.UseUnsafeHeaderParsing, DefaultValue= false)]
public bool UseUnsafeHeaderParsing
{
get { return (bool) this[this.useUnsafeHeaderParsing]; }
set { this[this.useUnsafeHeaderParsing] = value; }
}
ConfigurationPropertyCollection properties = new ConfigurationPropertyCollection();
readonly ConfigurationProperty maximumResponseHeadersLength =
new ConfigurationProperty(ConfigurationStrings.MaximumResponseHeadersLength,
typeof(int),
64,
ConfigurationPropertyOptions.None);
readonly ConfigurationProperty maximumErrorResponseLength =
new ConfigurationProperty(ConfigurationStrings.MaximumErrorResponseLength,
typeof(int),
64,
ConfigurationPropertyOptions.None);
readonly ConfigurationProperty maximumUnauthorizedUploadLength =
new ConfigurationProperty(ConfigurationStrings.maximumUnauthorizedUploadLength,
typeof(int),
-1,
ConfigurationPropertyOptions.None);
readonly ConfigurationProperty useUnsafeHeaderParsing =
new ConfigurationProperty(ConfigurationStrings.UseUnsafeHeaderParsing,
typeof(bool),
false,
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
- DataTableClearEvent.cs
- SuppressMessageAttribute.cs
- ControlIdConverter.cs
- GlyphShapingProperties.cs
- DispatcherFrame.cs
- StoreContentChangedEventArgs.cs
- BitmapEffectDrawingContent.cs
- CharAnimationBase.cs
- Track.cs
- objectresult_tresulttype.cs
- FileDialog_Vista.cs
- IdleTimeoutMonitor.cs
- WebPartDesigner.cs
- XmlStrings.cs
- SHA1.cs
- EventHandlerList.cs
- StylusButtonCollection.cs
- XmlSchemaIdentityConstraint.cs
- XmlnsDefinitionAttribute.cs
- ViewgenContext.cs
- RefExpr.cs
- DllNotFoundException.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- NumericUpDownAccelerationCollection.cs
- BaseResourcesBuildProvider.cs
- SegmentTree.cs
- HtmlElementEventArgs.cs
- Metafile.cs
- SocketAddress.cs
- CodeConditionStatement.cs
- WebBrowser.cs
- SerializerDescriptor.cs
- IgnoreSectionHandler.cs
- CompilerLocalReference.cs
- PerformanceCounterPermission.cs
- StagingAreaInputItem.cs
- MailWriter.cs
- DateTimeStorage.cs
- WebProxyScriptElement.cs
- SQlBooleanStorage.cs
- BackEase.cs
- DeferredTextReference.cs
- CqlWriter.cs
- WebPartDescription.cs
- TemplateField.cs
- XmlWrappingWriter.cs
- EditorPartChrome.cs
- NetStream.cs
- DocumentReference.cs
- WebPartsSection.cs
- NativeMethods.cs
- ListViewSortEventArgs.cs
- XmlAttributeCache.cs
- WebColorConverter.cs
- AnimationClockResource.cs
- IPCCacheManager.cs
- QilDataSource.cs
- ClientCultureInfo.cs
- EndpointAddress.cs
- RadioButtonPopupAdapter.cs
- PrintEvent.cs
- bidPrivateBase.cs
- ColorInterpolationModeValidation.cs
- DomNameTable.cs
- ObjectPersistData.cs
- ShortcutKeysEditor.cs
- SessionMode.cs
- CollectionsUtil.cs
- XsdDuration.cs
- ColumnTypeConverter.cs
- SmtpSection.cs
- ISO2022Encoding.cs
- DependencyPropertyKind.cs
- KeyInfo.cs
- httpstaticobjectscollection.cs
- WebContext.cs
- ToolboxComponentsCreatingEventArgs.cs
- SmiRecordBuffer.cs
- COM2IPerPropertyBrowsingHandler.cs
- SmtpSpecifiedPickupDirectoryElement.cs
- TemplatedWizardStep.cs
- ToolZone.cs
- OutputCacheProfile.cs
- MetadataArtifactLoaderFile.cs
- ConnectivityStatus.cs
- SqlTriggerContext.cs
- GenericQueueSurrogate.cs
- AssemblyName.cs
- SHA256Managed.cs
- METAHEADER.cs
- CopyOfAction.cs
- ToolStripItemBehavior.cs
- Automation.cs
- TableItemStyle.cs
- SqlProviderManifest.cs
- CodeConditionStatement.cs
- PageThemeParser.cs
- Int64Animation.cs
- Rect3D.cs
- ActiveDocumentEvent.cs