public async Task <IReadOnlyCollection <EndpointCheckResult> > PingAllEndpointsAsync() { if (!_brokerCollection.All(broker => broker.IsConnected)) { return(Array.Empty <EndpointCheckResult>()); } var tasks = _outboundRoutingConfiguration.Routes.SelectMany( route => route.GetOutboundRouter(_serviceProvider).Endpoints.Select(PingEndpointAsync)); return(await Task.WhenAll(tasks).ConfigureAwait(false)); }
/// <inheritdoc cref="IConsumersHealthCheckService.CheckConsumersConnectedAsync" /> public Task <bool> CheckConsumersConnectedAsync() => Task.FromResult(_brokerCollection.All(broker => broker.Consumers.All(consumer => consumer.IsConnected)));