public static async Task <ServiceInformation> GetServiceAsync(this IServiceDiscovery serviceDiscovery, IServiceSelector serviceSelectionStrategy, string name, string version = "") { var services = await serviceDiscovery.GetServicesAsync(name, version); if (services == null || services.Count() == 0) { throw new ArgumentNullException($"{name}:{version} No service node was found"); } return(serviceSelectionStrategy.SelectAsync(services)); }
public ServicePool(IServiceDiscovery serviceDiscovery, IServiceSelector serviceSelector, ServicePoolOptions options) { _serviceDiscovery = serviceDiscovery; _serviceSelector = serviceSelector; _options = options; }