From f51e60e35c5c31ed6909545bc28e67d045b5b5ab Mon Sep 17 00:00:00 2001 From: Adam Hammond Date: Fri, 19 Apr 2024 11:08:29 -0700 Subject: [PATCH] Fixes #5105 Add support for HttpRequestMessage objects containing StreamContent to the AddStandardHedgingHandler() resilience API. This change does not update any public API contracts. It updates internal and private API contracts only. This is a small commit to resolve comments made on the PR. --- .../Hedging/ResilienceHttpClientBuilderExtensions.Hedging.cs | 2 +- .../Internal/RequestMessageSnapshot.cs | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/Libraries/Microsoft.Extensions.Http.Resilience/Hedging/ResilienceHttpClientBuilderExtensions.Hedging.cs b/src/Libraries/Microsoft.Extensions.Http.Resilience/Hedging/ResilienceHttpClientBuilderExtensions.Hedging.cs index 1ed24cbef0a..4909f3ad451 100644 --- a/src/Libraries/Microsoft.Extensions.Http.Resilience/Hedging/ResilienceHttpClientBuilderExtensions.Hedging.cs +++ b/src/Libraries/Microsoft.Extensions.Http.Resilience/Hedging/ResilienceHttpClientBuilderExtensions.Hedging.cs @@ -120,7 +120,7 @@ public static IStandardHedgingHandlerBuilder AddStandardHedgingHandler(this IHtt // replace the request message args.ActionContext.Properties.Set(ResilienceKeys.RequestMessage, requestMessage); - if (route != null) + if (route is not null) { // replace the Host on the RequestUri of the request per the routing strategy requestMessage.RequestUri = requestMessage.RequestUri!.ReplaceHost(route); diff --git a/src/Libraries/Microsoft.Extensions.Http.Resilience/Internal/RequestMessageSnapshot.cs b/src/Libraries/Microsoft.Extensions.Http.Resilience/Internal/RequestMessageSnapshot.cs index 2c543f6ed2b..b44b65b05b3 100644 --- a/src/Libraries/Microsoft.Extensions.Http.Resilience/Internal/RequestMessageSnapshot.cs +++ b/src/Libraries/Microsoft.Extensions.Http.Resilience/Internal/RequestMessageSnapshot.cs @@ -104,7 +104,7 @@ bool IResettable.TryReset() private static async Task<(HttpContent? content, HttpContent? clonedContent)> CloneContentAsync(HttpContent? content) { HttpContent? clonedContent = null; - if (content != null) + if (content is not null) { HttpContent originalContent = content; Stream originalRequestBody = await content.ReadAsStreamAsync().ConfigureAwait(false); @@ -137,7 +137,7 @@ bool IResettable.TryReset() private bool IsInitialized() { - return _method != null; + return _method is not null; } [System.Diagnostics.CodeAnalysis.SuppressMessage("Resilience", "EA0014:The async method doesn't support cancellation", Justification = "Past the point of no cancellation.")]