/// <summary> /// Adds and configures custom resilience policies. /// </summary> /// <param name="clientBuilder">Configured HttpClient builder.</param> /// <param name="settings">Custom resilience policy settings.</param> /// <returns>An <see cref="IHttpClientBuilder"/> that can be used to configure the client.</returns> public static IHttpClientBuilder AddResiliencePolicies( this IHttpClientBuilder clientBuilder, ResiliencePoliciesSettings settings) { return(clientBuilder .AddTimeoutPolicy(settings.OverallTimeoutPolicySettings) .AddRetryPolicy(settings.RetrySettings) .AddCircuitBreakerPolicy(settings.CircuitBreakerSettings) .AddTimeoutPolicy(settings.TimeoutPerTryPolicySettings)); }