internal static HttpResponse Parse(string[] headerParts)
        {
            var statusLine = headerParts[0].Split(new[] { ' ' }, 3);
            if (statusLine.Length != 3)
                throw new ArgumentException("Invalid status line: " + headerParts[0]);

            var headers = new WebHeaderCollection();
            for (int i = 1; i < headerParts.Length; i++)
                headers.SetInternal(headerParts[i]);

            return new HttpResponse(
              statusLine[1], statusLine[2], new Version(statusLine[0].Substring(5)), headers);
        }
 internal HttpListenerRequest(HttpListenerContext context)
 {
     this.context = context;
     headers      = new WebHeaderCollection();
     version      = HttpVersion.Version10;
 }