mirror of
				https://github.com/nsnail/Ocelot.git
				synced 2025-11-04 15:30:49 +08:00 
			
		
		
		
	removed tasks we dont need
This commit is contained in:
		@@ -2,10 +2,9 @@
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
    using Ocelot.Configuration;
 | 
					    using Ocelot.Configuration;
 | 
				
			||||||
    using Ocelot.Responses;
 | 
					    using Ocelot.Responses;
 | 
				
			||||||
    using System.Threading.Tasks;
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public interface ILoadBalancerFactory
 | 
					    public interface ILoadBalancerFactory
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
        Task<Response<ILoadBalancer>> Get(DownstreamReRoute reRoute, ServiceProviderConfiguration config);
 | 
					        Response<ILoadBalancer> Get(DownstreamReRoute reRoute, ServiceProviderConfiguration config);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,11 +1,10 @@
 | 
				
			|||||||
using Ocelot.Configuration;
 | 
					using Ocelot.Configuration;
 | 
				
			||||||
using Ocelot.Responses;
 | 
					using Ocelot.Responses;
 | 
				
			||||||
using System.Threading.Tasks;
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Ocelot.LoadBalancer.LoadBalancers
 | 
					namespace Ocelot.LoadBalancer.LoadBalancers
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    public interface ILoadBalancerHouse
 | 
					    public interface ILoadBalancerHouse
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
        Task<Response<ILoadBalancer>> Get(DownstreamReRoute reRoute, ServiceProviderConfiguration config);
 | 
					        Response<ILoadBalancer> Get(DownstreamReRoute reRoute, ServiceProviderConfiguration config);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -18,7 +18,7 @@
 | 
				
			|||||||
            _loadBalancerCreators = loadBalancerCreators;
 | 
					            _loadBalancerCreators = loadBalancerCreators;
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        public Task<Response<ILoadBalancer>> Get(DownstreamReRoute reRoute, ServiceProviderConfiguration config)
 | 
					        public Response<ILoadBalancer> Get(DownstreamReRoute reRoute, ServiceProviderConfiguration config)
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            var serviceProviderFactoryResponse = _serviceProviderFactory.Get(config, reRoute);
 | 
					            var serviceProviderFactoryResponse = _serviceProviderFactory.Get(config, reRoute);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -36,7 +36,7 @@
 | 
				
			|||||||
                response = new OkResponse<ILoadBalancer>(createdLoadBalancer);
 | 
					                response = new OkResponse<ILoadBalancer>(createdLoadBalancer);
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            return Task.FromResult(response);
 | 
					            return response;
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -3,7 +3,6 @@ using Ocelot.Responses;
 | 
				
			|||||||
using System;
 | 
					using System;
 | 
				
			||||||
using System.Collections.Concurrent;
 | 
					using System.Collections.Concurrent;
 | 
				
			||||||
using System.Collections.Generic;
 | 
					using System.Collections.Generic;
 | 
				
			||||||
using System.Threading.Tasks;
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Ocelot.LoadBalancer.LoadBalancers
 | 
					namespace Ocelot.LoadBalancer.LoadBalancers
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
@@ -18,7 +17,7 @@ namespace Ocelot.LoadBalancer.LoadBalancers
 | 
				
			|||||||
            _loadBalancers = new ConcurrentDictionary<string, ILoadBalancer>();
 | 
					            _loadBalancers = new ConcurrentDictionary<string, ILoadBalancer>();
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        public async Task<Response<ILoadBalancer>> Get(DownstreamReRoute reRoute, ServiceProviderConfiguration config)
 | 
					        public Response<ILoadBalancer> Get(DownstreamReRoute reRoute, ServiceProviderConfiguration config)
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            try
 | 
					            try
 | 
				
			||||||
            {
 | 
					            {
 | 
				
			||||||
@@ -30,7 +29,7 @@ namespace Ocelot.LoadBalancer.LoadBalancers
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
                    if (reRoute.LoadBalancerOptions.Type != loadBalancer.GetType().Name)
 | 
					                    if (reRoute.LoadBalancerOptions.Type != loadBalancer.GetType().Name)
 | 
				
			||||||
                    {
 | 
					                    {
 | 
				
			||||||
                        result = await _factory.Get(reRoute, config);
 | 
					                        result = _factory.Get(reRoute, config);
 | 
				
			||||||
                        if (result.IsError)
 | 
					                        if (result.IsError)
 | 
				
			||||||
                        {
 | 
					                        {
 | 
				
			||||||
                            return new ErrorResponse<ILoadBalancer>(result.Errors);
 | 
					                            return new ErrorResponse<ILoadBalancer>(result.Errors);
 | 
				
			||||||
@@ -43,7 +42,7 @@ namespace Ocelot.LoadBalancer.LoadBalancers
 | 
				
			|||||||
                    return new OkResponse<ILoadBalancer>(loadBalancer);
 | 
					                    return new OkResponse<ILoadBalancer>(loadBalancer);
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                result = await _factory.Get(reRoute, config);
 | 
					                result = _factory.Get(reRoute, config);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                if (result.IsError)
 | 
					                if (result.IsError)
 | 
				
			||||||
                {
 | 
					                {
 | 
				
			||||||
@@ -58,7 +57,7 @@ namespace Ocelot.LoadBalancer.LoadBalancers
 | 
				
			|||||||
            {
 | 
					            {
 | 
				
			||||||
                return new ErrorResponse<ILoadBalancer>(new List<Ocelot.Errors.Error>()
 | 
					                return new ErrorResponse<ILoadBalancer>(new List<Ocelot.Errors.Error>()
 | 
				
			||||||
                {
 | 
					                {
 | 
				
			||||||
                    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}"),
 | 
				
			||||||
                });
 | 
					                });
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -22,7 +22,7 @@ namespace Ocelot.LoadBalancer.Middleware
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
        public async Task Invoke(DownstreamContext context)
 | 
					        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)
 | 
					            if (loadBalancer.IsError)
 | 
				
			||||||
            {
 | 
					            {
 | 
				
			||||||
                Logger.LogDebug("there was an error retriving the loadbalancer, setting pipeline error");
 | 
					                Logger.LogDebug("there was an error retriving the loadbalancer, setting pipeline error");
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -134,7 +134,7 @@ namespace Ocelot.UnitTests.LoadBalancer
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
        private void WhenIGetTheLoadBalancer()
 | 
					        private void WhenIGetTheLoadBalancer()
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            _result = _factory.Get(_reRoute, _serviceProviderConfig).Result;
 | 
					            _result = _factory.Get(_reRoute, _serviceProviderConfig);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        private void ThenTheLoadBalancerIsReturned<T>()
 | 
					        private void ThenTheLoadBalancerIsReturned<T>()
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -111,8 +111,8 @@ namespace Ocelot.UnitTests.LoadBalancer
 | 
				
			|||||||
        private void WhenIGetTheReRouteWithTheSameKeyButDifferentLoadBalancer(DownstreamReRoute reRoute)
 | 
					        private void WhenIGetTheReRouteWithTheSameKeyButDifferentLoadBalancer(DownstreamReRoute reRoute)
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            _reRoute = reRoute;
 | 
					            _reRoute = reRoute;
 | 
				
			||||||
            _factory.Setup(x => x.Get(_reRoute, _serviceProviderConfig)).ReturnsAsync(new OkResponse<ILoadBalancer>(new LeastConnection(null, null)));
 | 
					            _factory.Setup(x => x.Get(_reRoute, _serviceProviderConfig)).Returns(new OkResponse<ILoadBalancer>(new LeastConnection(null, null)));
 | 
				
			||||||
            _getResult = _loadBalancerHouse.Get(_reRoute, _serviceProviderConfig).Result;
 | 
					            _getResult = _loadBalancerHouse.Get(_reRoute, _serviceProviderConfig);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        private void ThenAnErrorIsReturned()
 | 
					        private void ThenAnErrorIsReturned()
 | 
				
			||||||
@@ -138,13 +138,13 @@ namespace Ocelot.UnitTests.LoadBalancer
 | 
				
			|||||||
        {
 | 
					        {
 | 
				
			||||||
            _reRoute = reRoute;
 | 
					            _reRoute = reRoute;
 | 
				
			||||||
            _loadBalancer = loadBalancer;
 | 
					            _loadBalancer = loadBalancer;
 | 
				
			||||||
            _factory.Setup(x => x.Get(_reRoute, _serviceProviderConfig)).ReturnsAsync(new OkResponse<ILoadBalancer>(loadBalancer));
 | 
					            _factory.Setup(x => x.Get(_reRoute, _serviceProviderConfig)).Returns(new OkResponse<ILoadBalancer>(loadBalancer));
 | 
				
			||||||
            _getResult = _loadBalancerHouse.Get(reRoute, _serviceProviderConfig).Result;
 | 
					            _getResult = _loadBalancerHouse.Get(reRoute, _serviceProviderConfig);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        private void WhenWeGetTheLoadBalancer(DownstreamReRoute reRoute)
 | 
					        private void WhenWeGetTheLoadBalancer(DownstreamReRoute reRoute)
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            _getResult = _loadBalancerHouse.Get(reRoute, _serviceProviderConfig).Result;
 | 
					            _getResult = _loadBalancerHouse.Get(reRoute, _serviceProviderConfig);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        private void ThenItIsReturned()
 | 
					        private void ThenItIsReturned()
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -182,7 +182,7 @@ namespace Ocelot.UnitTests.LoadBalancer
 | 
				
			|||||||
        {
 | 
					        {
 | 
				
			||||||
            _loadBalancerHouse
 | 
					            _loadBalancerHouse
 | 
				
			||||||
                .Setup(x => x.Get(It.IsAny<DownstreamReRoute>(), It.IsAny<ServiceProviderConfiguration>()))
 | 
					                .Setup(x => x.Get(It.IsAny<DownstreamReRoute>(), It.IsAny<ServiceProviderConfiguration>()))
 | 
				
			||||||
                .ReturnsAsync(new OkResponse<ILoadBalancer>(_loadBalancer.Object));
 | 
					                .Returns(new OkResponse<ILoadBalancer>(_loadBalancer.Object));
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        private void GivenTheLoadBalancerHouseReturnsAnError()
 | 
					        private void GivenTheLoadBalancerHouseReturnsAnError()
 | 
				
			||||||
@@ -194,7 +194,7 @@ namespace Ocelot.UnitTests.LoadBalancer
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
            _loadBalancerHouse
 | 
					            _loadBalancerHouse
 | 
				
			||||||
                .Setup(x => x.Get(It.IsAny<DownstreamReRoute>(), It.IsAny<ServiceProviderConfiguration>()))
 | 
					                .Setup(x => x.Get(It.IsAny<DownstreamReRoute>(), It.IsAny<ServiceProviderConfiguration>()))
 | 
				
			||||||
                .ReturnsAsync(_getLoadBalancerHouseError);
 | 
					                .Returns(_getLoadBalancerHouseError);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        private void ThenAnErrorStatingLoadBalancerCouldNotBeFoundIsSetOnPipeline()
 | 
					        private void ThenAnErrorStatingLoadBalancerCouldNotBeFoundIsSetOnPipeline()
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user