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
- XmlQueryTypeFactory.cs
- DockPattern.cs
- IntPtr.cs
- TextElementEnumerator.cs
- AssociationSet.cs
- XhtmlBasicLiteralTextAdapter.cs
- DESCryptoServiceProvider.cs
- AccessorTable.cs
- DataBoundControlHelper.cs
- TableFieldsEditor.cs
- FormViewInsertedEventArgs.cs
- StickyNoteAnnotations.cs
- TransformProviderWrapper.cs
- DropDownList.cs
- HtmlElementEventArgs.cs
- StackOverflowException.cs
- MappingMetadataHelper.cs
- DataGridPagerStyle.cs
- Brush.cs
- XpsLiterals.cs
- EncryptedPackageFilter.cs
- SqlXmlStorage.cs
- ConfigXmlText.cs
- CalendarTable.cs
- SecureStringHasher.cs
- DictionarySectionHandler.cs
- MachineKeyConverter.cs
- DataBoundControlAdapter.cs
- Size3DValueSerializer.cs
- LeafCellTreeNode.cs
- ShaderRenderModeValidation.cs
- OLEDB_Enum.cs
- WebPartAuthorizationEventArgs.cs
- NullableBoolConverter.cs
- Helper.cs
- DBConnection.cs
- PropertyTabAttribute.cs
- BinaryMethodMessage.cs
- HttpVersion.cs
- DataGridViewComboBoxCell.cs
- SQLCharsStorage.cs
- ToolStripDropDownItem.cs
- DtrList.cs
- RandomNumberGenerator.cs
- EncodingTable.cs
- SymDocumentType.cs
- CodeAttributeDeclarationCollection.cs
- SystemColors.cs
- AnimationException.cs
- ToolStripSeparator.cs
- GeneralTransform.cs
- HttpContextWrapper.cs
- RijndaelManagedTransform.cs
- XamlBuildProvider.cs
- ConnectionPoint.cs
- CodeMethodMap.cs
- SelectManyQueryOperator.cs
- TreeNode.cs
- UserControl.cs
- SimpleRecyclingCache.cs
- CommonXSendMessage.cs
- ConsoleEntryPoint.cs
- RsaSecurityToken.cs
- TextBoxRenderer.cs
- TextEffect.cs
- DataGridHelper.cs
- Buffer.cs
- Literal.cs
- DataListItem.cs
- DataFormats.cs
- baseaxisquery.cs
- PolyBezierSegmentFigureLogic.cs
- DesignParameter.cs
- ExtentJoinTreeNode.cs
- RelationshipEnd.cs
- MachineKeyConverter.cs
- NativeMethods.cs
- AssemblyName.cs
- RegistryDataKey.cs
- CdpEqualityComparer.cs
- ListenerElementsCollection.cs
- CqlGenerator.cs
- Camera.cs
- ControlIdConverter.cs
- SafeFileHandle.cs
- Exception.cs
- LayoutInformation.cs
- TextRenderer.cs
- TraceUtility.cs
- RC2.cs
- RowCache.cs
- ObjectViewFactory.cs
- ActivityStatusChangeEventArgs.cs
- SingleQueryOperator.cs
- OrderPreservingSpoolingTask.cs
- PerspectiveCamera.cs
- GridItem.cs
- MenuScrollingVisibilityConverter.cs
- MasterPage.cs
- LineUtil.cs