diff --git a/src/Shiny.Mediator.Resilience/Handlers/ResilientRequestMiddleware.cs b/src/Shiny.Mediator.Resilience/Handlers/ResilientRequestMiddleware.cs index a01148f..cd23598 100644 --- a/src/Shiny.Mediator.Resilience/Handlers/ResilientRequestMiddleware.cs +++ b/src/Shiny.Mediator.Resilience/Handlers/ResilientRequestMiddleware.cs @@ -21,7 +21,7 @@ namespace Shiny.Mediator.Resilience.Handlers; //https://learn.microsoft.com/en-us/dotnet/core/resilience/?tabs=dotnet-cli //https://devblogs.microsoft.com/dotnet/building-resilient-cloud-services-with-dotnet-8/ public class ResilientRequestHandlerMiddleware( - IConfiguration config, + IConfiguration configuration, ResiliencePipelineProvider pipelineProvider ) : IRequestMiddleware where TRequest : IRequest { @@ -32,6 +32,9 @@ public async Task Process( CancellationToken cancellationToken ) { + // TODO: configuration should also setup resilience pipelines at startup? + var section = configuration.GetHandlerSection("Resilience", request!, requestHandler); + var attribute = requestHandler.GetHandlerHandleMethodAttribute(); attribute ??= request.GetType().GetCustomAttribute(); if (attribute == null) diff --git a/tests/Shiny.Mediator.Tests/ConfigurationTests.cs b/tests/Shiny.Mediator.Tests/ConfigurationTests.cs index dd4c749..ae310be 100644 --- a/tests/Shiny.Mediator.Tests/ConfigurationTests.cs +++ b/tests/Shiny.Mediator.Tests/ConfigurationTests.cs @@ -10,7 +10,10 @@ public class ConfigurationTests(ITestOutputHelper output) [Fact] public void AddConfiguration() { - // var config = new ConfigurationManager(); + // TODO: ORDER: config, attribute contract, attribute handler + // TODO: config order: full type, exact namespace, sub namespace, * + var dict = new Dictionary(); + var config = new ConfigurationManager(); // config.AddConfiguration(new MemoryConfigurationProvider(new MemoryConfigurationSource().InitialData)); // config.Get("key1").Should().Be("value1"); }