2 // System.Net.Configuration.HttpWebRequestElement.cs
5 // Tim Coleman (tim@timcoleman.com)
6 // Chris Toshok (toshok@ximian.com)
8 // Copyright (C) Tim Coleman, 2004
9 // (C) 2004,2005 Novell, Inc. (http://www.novell.com)
13 // Permission is hereby granted, free of charge, to any person obtaining
14 // a copy of this software and associated documentation files (the
15 // "Software"), to deal in the Software without restriction, including
16 // without limitation the rights to use, copy, modify, merge, publish,
17 // distribute, sublicense, and/or sell copies of the Software, and to
18 // permit persons to whom the Software is furnished to do so, subject to
19 // the following conditions:
21 // The above copyright notice and this permission notice shall be
22 // included in all copies or substantial portions of the Software.
24 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
25 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
26 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
27 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
28 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
29 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
30 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
33 #if NET_2_0 && CONFIGURATION_DEP
35 using System
.Configuration
;
37 namespace System
.Net
.Configuration
39 public sealed class HttpWebRequestElement
: ConfigurationElement
43 static ConfigurationProperty maximumErrorResponseLengthProp
;
44 static ConfigurationProperty maximumResponseHeadersLengthProp
;
45 static ConfigurationProperty maximumUnauthorizedUploadLengthProp
;
46 static ConfigurationProperty useUnsafeHeaderParsingProp
;
47 static ConfigurationPropertyCollection properties
;
53 static HttpWebRequestElement ()
55 maximumErrorResponseLengthProp
= new ConfigurationProperty ("maximumErrorResponseLength", typeof (int), 64);
56 maximumResponseHeadersLengthProp
= new ConfigurationProperty ("maximumResponseHeadersLength", typeof (int), 64);
57 maximumUnauthorizedUploadLengthProp
= new ConfigurationProperty ("maximumUnauthorizedUploadLength", typeof (int), -1);
58 useUnsafeHeaderParsingProp
= new ConfigurationProperty ("useUnsafeHeaderParsing", typeof (bool), false);
59 properties
= new ConfigurationPropertyCollection ();
61 properties
.Add (maximumErrorResponseLengthProp
);
62 properties
.Add (maximumResponseHeadersLengthProp
);
63 properties
.Add (maximumUnauthorizedUploadLengthProp
);
64 properties
.Add (useUnsafeHeaderParsingProp
);
67 public HttpWebRequestElement ()
71 #endregion // Constructors
75 [ConfigurationProperty("maximumErrorResponseLength", DefaultValue
= "64")]
76 public int MaximumErrorResponseLength
{
77 get { return (int) base[maximumErrorResponseLengthProp]; }
78 set { base [maximumErrorResponseLengthProp] = value; }
81 [ConfigurationProperty("maximumResponseHeadersLength", DefaultValue
= "64")]
82 public int MaximumResponseHeadersLength
{
83 get { return (int) base [maximumResponseHeadersLengthProp]; }
84 set { base [maximumResponseHeadersLengthProp] = value; }
87 [ConfigurationProperty("maximumUnauthorizedUploadLength", DefaultValue
= "-1")]
88 public int MaximumUnauthorizedUploadLength
{
89 get { return (int) base [maximumUnauthorizedUploadLengthProp]; }
90 set { base [maximumUnauthorizedUploadLengthProp] = value; }
93 [ConfigurationProperty("useUnsafeHeaderParsing", DefaultValue
= "False")]
94 public bool UseUnsafeHeaderParsing
{
95 get { return (bool) base [useUnsafeHeaderParsingProp]; }
96 set { base[useUnsafeHeaderParsingProp] = value; }
99 protected override ConfigurationPropertyCollection Properties
{
100 get { return properties; }
103 #endregion // Properties
109 protected override void PostDeserialize ()
111 base.PostDeserialize ();
114 #endregion // Methods