//private Task ProcessPut (HttpClient hc, string putLocation, StreamContent sc) //{ // var response = hc.Put (putLocation, sc); // if (response.StatusCode == HttpStatusCode.TemporaryRedirect) // { // var uri = response.Content.Headers.ContentLocation; // } // else // { // response.EnsureSuccessStatusCode(); // } //} /// <summary> /// Opens an FSDataOutputStream at the indicated Path. Files are overwritten by default. /// </summary> /// <param name="localFile"></param> /// <param name="remotePath"></param> /// <returns></returns> public string CreateFile(string localFile, string remotePath) { WebClient hc = this.CreateHTTPClient(true); var uri = this.GetUriForOperation(remotePath) + "op=CREATE&overwrite=true"; // var resp = hc.Put (uri, null); // var putLocation = resp.Headers.Location; var putLocation = uri; BufferedStream sc = new System.IO.BufferedStream(System.IO.File.OpenRead(localFile)); hc.UploadData(putLocation, "PUT", sc.ReadFully()); return(hc.Headers[HttpResponseHeader.Location].ToString()); }