Merge pull request #463 from strawd/concurrent-requests
[mono.git] / mcs / class / System / System.Net / WebConnectionData.cs
index 33b90c72cc9e0dc224d4554aea68a300b30d7c43..77d19540be16bfa46129a8ce540a491513a472bf 100644 (file)
@@ -39,11 +39,14 @@ namespace System.Net
                public string StatusDescription;
                public WebHeaderCollection Headers;
                public Version Version;
+               public Version ProxyVersion;
                public Stream stream;
                public string[] Challenge;
+               ReadState _readState;
 
                public WebConnectionData ()
                {
+                       _readState = ReadState.None;
                }
 
                public WebConnectionData (HttpWebRequest request)
@@ -59,6 +62,19 @@ namespace System.Net
                                _request = value;
                        }
                }
+
+               public ReadState ReadState {
+                       get {
+                               return _readState;
+                       }
+                       set {
+                               lock (this) {
+                                       if ((_readState == ReadState.Aborted) && (value != ReadState.Aborted))
+                                               throw new WebException ("Aborted", WebExceptionStatus.RequestCanceled);
+                                       _readState = value;
+                               }
+                       }
+               }
        }
 }