private async Task ExecuteChunkUploadMessage(HttpRequestMessage requestMessage, CancellationToken cancellationToken) { await TryPauseAsync(cancellationToken).ConfigureAwait(false); requestMessage.AddDefaultHeaders(Client); var client = GetHttpClient(); using ( var responseMessage = await RequestExecutor.SendAsync( client, requestMessage, HttpCompletionOption.ResponseContentRead, cancellationToken).ConfigureAwait(false)) { if (Configuration.IsNetCore) { progressReporter.ReportProgress(requestMessage.Content.Headers.ContentLength.GetValueOrDefault()); } string responseContent = await responseMessage.Content.ReadAsStringAsync().ConfigureAwait(false); ValidateChunkResponse(responseMessage, responseContent); } }
private async Task <HttpResponseMessage> SendHttpRequest(HttpRequestMessage requestMessage, CancellationToken cancellationToken) { var client = GetHttpClient(); requestMessage.Headers.Add("Accept", "application/json"); requestMessage.AddDefaultHeaders(Client); return(await RequestExecutor.SendAsync( client, requestMessage, HttpCompletionOption.ResponseContentRead, cancellationToken).ConfigureAwait(false)); }
private async Task <UploadResponse> FinishUploadAsync() { var client = GetHttpClient(); var finishUri = this.GetFinishUriForThreadedUploads(); var requestMessage = new HttpRequestMessage(HttpMethod.Get, finishUri); requestMessage.Headers.Add("Accept", "application/json"); requestMessage.AddDefaultHeaders(Client); var response = await RequestExecutor.SendAsync( client, requestMessage, HttpCompletionOption.ResponseContentRead, default(CancellationToken)).ConfigureAwait(false); return(await GetUploadResponseAsync(response, HashProvider.GetComputedHashAsString()).ConfigureAwait(false)); }