private IWebRequest Wrap(System.Net.WebRequest webRequest) { if (webRequest is System.Net.FileWebRequest) { return(new FileWebRequest(webRequest as System.Net.FileWebRequest)); } if (webRequest is System.Net.FtpWebRequest) { return(new FtpWebRequest(webRequest as System.Net.FtpWebRequest)); } if (webRequest is System.Net.HttpWebRequest) { return(new HttpWebRequest(webRequest as System.Net.HttpWebRequest)); } throw new NotSupportedException("Unsupported web request type: " + webRequest.GetType()); }
protected override System.Net.WebRequest GetWebRequest(System.Uri uri) { System.Net.WebRequest wr = base.GetWebRequest(uri); if (wr != null && wr.GetType() == typeof(System.Net.HttpWebRequest)) { System.Net.HttpWebRequest request = (System.Net.HttpWebRequest)base.GetWebRequest(uri); if (request != null) { request.ServicePoint.ConnectionLimit = ConnectionLimit; request.Timeout = Timeout; return(request); } } return(wr); }