System.Net.Http.HttpClient.FinishSendAsyncUnbuffered C# (CSharp) Method

FinishSendAsyncUnbuffered() private method

private FinishSendAsyncUnbuffered ( Task sendTask, HttpRequestMessage request, CancellationTokenSource cts, bool disposeCts ) : Task
sendTask Task
request HttpRequestMessage
cts System.Threading.CancellationTokenSource
disposeCts bool
return Task
        private async Task<HttpResponseMessage> FinishSendAsyncUnbuffered(
            Task<HttpResponseMessage> sendTask, HttpRequestMessage request, CancellationTokenSource cts, bool disposeCts)
        {
            try
            {
                HttpResponseMessage response = await sendTask.ConfigureAwait(false);
                if (response == null)
                {
                    throw new InvalidOperationException(SR.net_http_handler_noresponse);
                }

                if (NetEventSource.IsEnabled) NetEventSource.ClientSendCompleted(this, response, request);
                return response;
            }
            catch (Exception e)
            {
                HandleFinishSendAsyncError(e, cts);
                throw;
            }
            finally
            {
                HandleFinishSendAsyncCleanup(request, cts, disposeCts);
            }
        }