From c0c0941c4c3078e46493afb19a614595b4930ab9 Mon Sep 17 00:00:00 2001 From: Cesar De la Torre Date: Tue, 4 Apr 2017 13:19:22 -0700 Subject: [PATCH] Refactored internal ResiliencePolicy base class and ResiliencePolicyFactory --- .../HttpResilience/Policies/CircuitBreakerPolicy.cs | 2 +- .../Resilience/HttpResilience/Policies/RetryPolicy.cs | 2 +- .../{ResilientPolicy.cs => ResiliencePolicy.cs} | 2 +- ...silientPolicyFactory.cs => ResiliencePolicyFactory.cs} | 6 +++--- .../Resilience/HttpResilience/ResilientHttpClient.cs | 4 ++-- src/Web/WebMVC/Startup.cs | 8 ++++---- src/Web/WebMVC/appsettings.json | 2 +- 7 files changed, 13 insertions(+), 13 deletions(-) rename src/BuildingBlocks/Resilience/HttpResilience/{ResilientPolicy.cs => ResiliencePolicy.cs} (83%) rename src/BuildingBlocks/Resilience/HttpResilience/{ResilientPolicyFactory.cs => ResiliencePolicyFactory.cs} (61%) diff --git a/src/BuildingBlocks/Resilience/HttpResilience/Policies/CircuitBreakerPolicy.cs b/src/BuildingBlocks/Resilience/HttpResilience/Policies/CircuitBreakerPolicy.cs index ed9ca0d15..0b65edce6 100644 --- a/src/BuildingBlocks/Resilience/HttpResilience/Policies/CircuitBreakerPolicy.cs +++ b/src/BuildingBlocks/Resilience/HttpResilience/Policies/CircuitBreakerPolicy.cs @@ -4,7 +4,7 @@ using System.Text; namespace Microsoft.eShopOnContainers.BuildingBlocks.Resilience.HttpResilience.Policies { - internal class CircuitBreakerPolicy : ResilientPolicy + internal class CircuitBreakerPolicy : ResiliencePolicy { public CircuitBreakerPolicy(int exceptionsAllowedBeforeBreaking, int durationOfBreakInMinutes) { diff --git a/src/BuildingBlocks/Resilience/HttpResilience/Policies/RetryPolicy.cs b/src/BuildingBlocks/Resilience/HttpResilience/Policies/RetryPolicy.cs index c33232596..0bb27d929 100644 --- a/src/BuildingBlocks/Resilience/HttpResilience/Policies/RetryPolicy.cs +++ b/src/BuildingBlocks/Resilience/HttpResilience/Policies/RetryPolicy.cs @@ -4,7 +4,7 @@ using System.Text; namespace Microsoft.eShopOnContainers.BuildingBlocks.Resilience.HttpResilience.Policies { - internal class RetryPolicy : ResilientPolicy + internal class RetryPolicy : ResiliencePolicy { public RetryPolicy(int retries, int backoffSeconds, bool exponentialBackoff) { diff --git a/src/BuildingBlocks/Resilience/HttpResilience/ResilientPolicy.cs b/src/BuildingBlocks/Resilience/HttpResilience/ResiliencePolicy.cs similarity index 83% rename from src/BuildingBlocks/Resilience/HttpResilience/ResilientPolicy.cs rename to src/BuildingBlocks/Resilience/HttpResilience/ResiliencePolicy.cs index de2eab218..f0adb1871 100644 --- a/src/BuildingBlocks/Resilience/HttpResilience/ResilientPolicy.cs +++ b/src/BuildingBlocks/Resilience/HttpResilience/ResiliencePolicy.cs @@ -4,7 +4,7 @@ using System.Text; namespace Microsoft.eShopOnContainers.BuildingBlocks.Resilience.HttpResilience { - public class ResilientPolicy + public class ResiliencePolicy { } } diff --git a/src/BuildingBlocks/Resilience/HttpResilience/ResilientPolicyFactory.cs b/src/BuildingBlocks/Resilience/HttpResilience/ResiliencePolicyFactory.cs similarity index 61% rename from src/BuildingBlocks/Resilience/HttpResilience/ResilientPolicyFactory.cs rename to src/BuildingBlocks/Resilience/HttpResilience/ResiliencePolicyFactory.cs index a3d90c459..0b964dc71 100644 --- a/src/BuildingBlocks/Resilience/HttpResilience/ResilientPolicyFactory.cs +++ b/src/BuildingBlocks/Resilience/HttpResilience/ResiliencePolicyFactory.cs @@ -5,14 +5,14 @@ using System.Text; namespace Microsoft.eShopOnContainers.BuildingBlocks.Resilience.HttpResilience { - public static class ResilientPolicyFactory + public static class ResiliencePolicyFactory { - public static ResilientPolicy CreateRetryPolicy(int retries, int backoffSeconds, bool exponentialBackoff) + public static ResiliencePolicy CreateRetryPolicy(int retries, int backoffSeconds, bool exponentialBackoff) { return new RetryPolicy(retries, backoffSeconds, exponentialBackoff); } - public static ResilientPolicy CreateCiscuitBreakerPolicy(int exceptionsAllowedBeforeBreaking, int durationOfBreakInMinutes) + public static ResiliencePolicy CreateCiscuitBreakerPolicy(int exceptionsAllowedBeforeBreaking, int durationOfBreakInMinutes) { return new CircuitBreakerPolicy(exceptionsAllowedBeforeBreaking, durationOfBreakInMinutes); } diff --git a/src/BuildingBlocks/Resilience/HttpResilience/ResilientHttpClient.cs b/src/BuildingBlocks/Resilience/HttpResilience/ResilientHttpClient.cs index 67c91fe75..9e739f05d 100644 --- a/src/BuildingBlocks/Resilience/HttpResilience/ResilientHttpClient.cs +++ b/src/BuildingBlocks/Resilience/HttpResilience/ResilientHttpClient.cs @@ -32,7 +32,7 @@ namespace Microsoft.eShopOnContainers.BuildingBlocks.Resilience.HttpResilience _policyWrapper = Policy.WrapAsync(policies.ToArray()); } - public ResilientHttpClient(List policies, ILogger logger) + public ResilientHttpClient(List policies, ILogger logger) { _client = new HttpClient(); _logger = logger; @@ -41,7 +41,7 @@ namespace Microsoft.eShopOnContainers.BuildingBlocks.Resilience.HttpResilience _policyWrapper = Policy.WrapAsync(GeneratePolicies(policies)); } - private Policy[] GeneratePolicies(IList policies) + private Policy[] GeneratePolicies(IList policies) { var pollyPolicies = new List(); diff --git a/src/Web/WebMVC/Startup.cs b/src/Web/WebMVC/Startup.cs index e54440feb..1b1ebe180 100644 --- a/src/Web/WebMVC/Startup.cs +++ b/src/Web/WebMVC/Startup.cs @@ -58,13 +58,13 @@ namespace Microsoft.eShopOnContainers.WebMVC services.AddTransient(); services.AddTransient, IdentityParser>(); - if (Configuration.GetValue("ActivateCircuitBreaker") == bool.TrueString) + if (Configuration.GetValue("UseResilientHttp") == bool.TrueString) { services.AddSingleton( - new List + new List { - ResilientPolicyFactory.CreateRetryPolicy(6, 2, true), - ResilientPolicyFactory.CreateCiscuitBreakerPolicy(5, 1) + ResiliencePolicyFactory.CreateRetryPolicy(6, 2, true), + ResiliencePolicyFactory.CreateCiscuitBreakerPolicy(5, 1) }); services.AddTransient(); } diff --git a/src/Web/WebMVC/appsettings.json b/src/Web/WebMVC/appsettings.json index 4ad17b662..796bc972f 100644 --- a/src/Web/WebMVC/appsettings.json +++ b/src/Web/WebMVC/appsettings.json @@ -4,7 +4,7 @@ "BasketUrl": "http://localhost:5103", "IdentityUrl": "http://localhost:5105", "CallBackUrl": "http://localhost:5100/", - "ActivateCircuitBreaker": "True", + "UseResilientHttp": "True", "Logging": { "IncludeScopes": false, "LogLevel": {