Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ Send() [4/4]

HttpResponseMessage System.Net.Http.HttpClient.Send ( HttpRequestMessage request,
HttpCompletionOption completionOption,
CancellationToken cancellationToken )
inline

Definition at line 505 of file HttpClient.cs.

506 {
507 CheckRequestBeforeSend(request);
509 CancellationTokenSource item = tuple.TokenSource;
510 bool item2 = tuple.DisposeTokenSource;
511 CancellationTokenSource item3 = tuple.PendingRequestsCts;
512 bool flag = StartSend(request);
513 bool responseContentTelemetryStarted = false;
514 HttpResponseMessage httpResponseMessage = null;
515 try
516 {
517 httpResponseMessage = base.Send(request, item.Token);
518 ThrowForNullResponse(httpResponseMessage);
519 if (ShouldBufferResponse(completionOption, request))
520 {
521 if (HttpTelemetry.Log.IsEnabled() && flag)
522 {
523 HttpTelemetry.Log.ResponseContentStart();
524 responseContentTelemetryStarted = true;
525 }
526 httpResponseMessage.Content.LoadIntoBuffer(_maxResponseContentBufferSize, item.Token);
527 }
528 return httpResponseMessage;
529 }
530 catch (Exception e)
531 {
532 HandleFailure(e, flag, httpResponseMessage, item, cancellationToken, item3);
533 throw;
534 }
535 finally
536 {
537 FinishSend(item, item2, flag, responseContentTelemetryStarted);
538 }
539 }
static void FinishSend(CancellationTokenSource cts, bool disposeCts, bool telemetryStarted, bool responseContentTelemetryStarted)
void HandleFailure(Exception e, bool telemetryStarted, HttpResponseMessage response, CancellationTokenSource cts, CancellationToken cancellationToken, CancellationTokenSource pendingRequestsCts)
CancellationTokenSource bool DisposeTokenSource
void CheckRequestBeforeSend(HttpRequestMessage request)
CancellationTokenSource TokenSource
CancellationTokenSource bool CancellationTokenSource PendingRequestsCts PrepareCancellationTokenSource(CancellationToken cancellationToken)
static void ThrowForNullResponse([NotNull] HttpResponseMessage response)
static bool StartSend(HttpRequestMessage request)
static bool ShouldBufferResponse(HttpCompletionOption completionOption, HttpRequestMessage request)

References System.Net.Http.HttpClient._maxResponseContentBufferSize, System.cancellationToken, System.Net.Http.HttpClient.CheckRequestBeforeSend(), System.Net.Http.HttpResponseMessage.Content, System.Net.Http.HttpClient.DisposeTokenSource, System.Net.Http.HttpClient.FinishSend(), System.Net.Http.HttpClient.HandleFailure(), System.item, System.Net.Http.HttpContent.LoadIntoBuffer(), System.Net.Http.HttpTelemetry.Log, System.Net.Http.HttpClient.PrepareCancellationTokenSource(), System.Net.Http.HttpClient.ShouldBufferResponse(), System.Net.Http.HttpClient.StartSend(), System.Net.Http.HttpClient.ThrowForNullResponse(), and System.Net.Http.HttpClient.TokenSource.