diff --git a/src/Ocelot/LoadBalancer/LoadBalancers/ILoadBalancerFactory.cs b/src/Ocelot/LoadBalancer/LoadBalancers/ILoadBalancerFactory.cs index df115c41..9053b6d4 100644 --- a/src/Ocelot/LoadBalancer/LoadBalancers/ILoadBalancerFactory.cs +++ b/src/Ocelot/LoadBalancer/LoadBalancers/ILoadBalancerFactory.cs @@ -2,10 +2,9 @@ { using Ocelot.Configuration; using Ocelot.Responses; - using System.Threading.Tasks; public interface ILoadBalancerFactory { - Task> Get(DownstreamReRoute reRoute, ServiceProviderConfiguration config); + Response Get(DownstreamReRoute reRoute, ServiceProviderConfiguration config); } } diff --git a/src/Ocelot/LoadBalancer/LoadBalancers/ILoadBalancerHouse.cs b/src/Ocelot/LoadBalancer/LoadBalancers/ILoadBalancerHouse.cs index 92eb0e9e..b5cfcfc0 100644 --- a/src/Ocelot/LoadBalancer/LoadBalancers/ILoadBalancerHouse.cs +++ b/src/Ocelot/LoadBalancer/LoadBalancers/ILoadBalancerHouse.cs @@ -1,11 +1,10 @@ using Ocelot.Configuration; using Ocelot.Responses; -using System.Threading.Tasks; namespace Ocelot.LoadBalancer.LoadBalancers { public interface ILoadBalancerHouse { - Task> Get(DownstreamReRoute reRoute, ServiceProviderConfiguration config); + Response Get(DownstreamReRoute reRoute, ServiceProviderConfiguration config); } } diff --git a/src/Ocelot/LoadBalancer/LoadBalancers/LoadBalancerFactory.cs b/src/Ocelot/LoadBalancer/LoadBalancers/LoadBalancerFactory.cs index 2b7e71e2..6f0fd5e9 100644 --- a/src/Ocelot/LoadBalancer/LoadBalancers/LoadBalancerFactory.cs +++ b/src/Ocelot/LoadBalancer/LoadBalancers/LoadBalancerFactory.cs @@ -18,7 +18,7 @@ _loadBalancerCreators = loadBalancerCreators; } - public Task> Get(DownstreamReRoute reRoute, ServiceProviderConfiguration config) + public Response Get(DownstreamReRoute reRoute, ServiceProviderConfiguration config) { var serviceProviderFactoryResponse = _serviceProviderFactory.Get(config, reRoute); @@ -36,7 +36,7 @@ response = new OkResponse(createdLoadBalancer); } - return Task.FromResult(response); + return response; } } } diff --git a/src/Ocelot/LoadBalancer/LoadBalancers/LoadBalancerHouse.cs b/src/Ocelot/LoadBalancer/LoadBalancers/LoadBalancerHouse.cs index 8f7e8135..2113457a 100644 --- a/src/Ocelot/LoadBalancer/LoadBalancers/LoadBalancerHouse.cs +++ b/src/Ocelot/LoadBalancer/LoadBalancers/LoadBalancerHouse.cs @@ -3,7 +3,6 @@ using Ocelot.Responses; using System; using System.Collections.Concurrent; using System.Collections.Generic; -using System.Threading.Tasks; namespace Ocelot.LoadBalancer.LoadBalancers { @@ -18,7 +17,7 @@ namespace Ocelot.LoadBalancer.LoadBalancers _loadBalancers = new ConcurrentDictionary(); } - public async Task> Get(DownstreamReRoute reRoute, ServiceProviderConfiguration config) + public Response Get(DownstreamReRoute reRoute, ServiceProviderConfiguration config) { try { @@ -30,7 +29,7 @@ namespace Ocelot.LoadBalancer.LoadBalancers if (reRoute.LoadBalancerOptions.Type != loadBalancer.GetType().Name) { - result = await _factory.Get(reRoute, config); + result = _factory.Get(reRoute, config); if (result.IsError) { return new ErrorResponse(result.Errors); @@ -43,7 +42,7 @@ namespace Ocelot.LoadBalancer.LoadBalancers return new OkResponse(loadBalancer); } - result = await _factory.Get(reRoute, config); + result = _factory.Get(reRoute, config); if (result.IsError) { @@ -58,7 +57,7 @@ namespace Ocelot.LoadBalancer.LoadBalancers { return new ErrorResponse(new List() { - new UnableToFindLoadBalancerError($"unabe to find load balancer for {reRoute.LoadBalancerKey} exception is {ex}") + new UnableToFindLoadBalancerError($"unabe to find load balancer for {reRoute.LoadBalancerKey} exception is {ex}"), }); } } diff --git a/src/Ocelot/LoadBalancer/Middleware/LoadBalancingMiddleware.cs b/src/Ocelot/LoadBalancer/Middleware/LoadBalancingMiddleware.cs index 646af5fe..bcf9fe80 100644 --- a/src/Ocelot/LoadBalancer/Middleware/LoadBalancingMiddleware.cs +++ b/src/Ocelot/LoadBalancer/Middleware/LoadBalancingMiddleware.cs @@ -22,7 +22,7 @@ namespace Ocelot.LoadBalancer.Middleware public async Task Invoke(DownstreamContext context) { - var loadBalancer = await _loadBalancerHouse.Get(context.DownstreamReRoute, context.Configuration.ServiceProviderConfiguration); + var loadBalancer = _loadBalancerHouse.Get(context.DownstreamReRoute, context.Configuration.ServiceProviderConfiguration); if (loadBalancer.IsError) { Logger.LogDebug("there was an error retriving the loadbalancer, setting pipeline error"); diff --git a/test/Ocelot.UnitTests/LoadBalancer/LoadBalancerFactoryTests.cs b/test/Ocelot.UnitTests/LoadBalancer/LoadBalancerFactoryTests.cs index bd9ac6c0..a581647f 100644 --- a/test/Ocelot.UnitTests/LoadBalancer/LoadBalancerFactoryTests.cs +++ b/test/Ocelot.UnitTests/LoadBalancer/LoadBalancerFactoryTests.cs @@ -134,7 +134,7 @@ namespace Ocelot.UnitTests.LoadBalancer private void WhenIGetTheLoadBalancer() { - _result = _factory.Get(_reRoute, _serviceProviderConfig).Result; + _result = _factory.Get(_reRoute, _serviceProviderConfig); } private void ThenTheLoadBalancerIsReturned() diff --git a/test/Ocelot.UnitTests/LoadBalancer/LoadBalancerHouseTests.cs b/test/Ocelot.UnitTests/LoadBalancer/LoadBalancerHouseTests.cs index 597a79f0..be43b74e 100644 --- a/test/Ocelot.UnitTests/LoadBalancer/LoadBalancerHouseTests.cs +++ b/test/Ocelot.UnitTests/LoadBalancer/LoadBalancerHouseTests.cs @@ -111,8 +111,8 @@ namespace Ocelot.UnitTests.LoadBalancer private void WhenIGetTheReRouteWithTheSameKeyButDifferentLoadBalancer(DownstreamReRoute reRoute) { _reRoute = reRoute; - _factory.Setup(x => x.Get(_reRoute, _serviceProviderConfig)).ReturnsAsync(new OkResponse(new LeastConnection(null, null))); - _getResult = _loadBalancerHouse.Get(_reRoute, _serviceProviderConfig).Result; + _factory.Setup(x => x.Get(_reRoute, _serviceProviderConfig)).Returns(new OkResponse(new LeastConnection(null, null))); + _getResult = _loadBalancerHouse.Get(_reRoute, _serviceProviderConfig); } private void ThenAnErrorIsReturned() @@ -138,13 +138,13 @@ namespace Ocelot.UnitTests.LoadBalancer { _reRoute = reRoute; _loadBalancer = loadBalancer; - _factory.Setup(x => x.Get(_reRoute, _serviceProviderConfig)).ReturnsAsync(new OkResponse(loadBalancer)); - _getResult = _loadBalancerHouse.Get(reRoute, _serviceProviderConfig).Result; + _factory.Setup(x => x.Get(_reRoute, _serviceProviderConfig)).Returns(new OkResponse(loadBalancer)); + _getResult = _loadBalancerHouse.Get(reRoute, _serviceProviderConfig); } private void WhenWeGetTheLoadBalancer(DownstreamReRoute reRoute) { - _getResult = _loadBalancerHouse.Get(reRoute, _serviceProviderConfig).Result; + _getResult = _loadBalancerHouse.Get(reRoute, _serviceProviderConfig); } private void ThenItIsReturned() diff --git a/test/Ocelot.UnitTests/LoadBalancer/LoadBalancerMiddlewareTests.cs b/test/Ocelot.UnitTests/LoadBalancer/LoadBalancerMiddlewareTests.cs index 1a6202cf..688d43f0 100644 --- a/test/Ocelot.UnitTests/LoadBalancer/LoadBalancerMiddlewareTests.cs +++ b/test/Ocelot.UnitTests/LoadBalancer/LoadBalancerMiddlewareTests.cs @@ -182,7 +182,7 @@ namespace Ocelot.UnitTests.LoadBalancer { _loadBalancerHouse .Setup(x => x.Get(It.IsAny(), It.IsAny())) - .ReturnsAsync(new OkResponse(_loadBalancer.Object)); + .Returns(new OkResponse(_loadBalancer.Object)); } private void GivenTheLoadBalancerHouseReturnsAnError() @@ -194,7 +194,7 @@ namespace Ocelot.UnitTests.LoadBalancer _loadBalancerHouse .Setup(x => x.Get(It.IsAny(), It.IsAny())) - .ReturnsAsync(_getLoadBalancerHouseError); + .Returns(_getLoadBalancerHouseError); } private void ThenAnErrorStatingLoadBalancerCouldNotBeFoundIsSetOnPipeline()