Octopus.Cli.Commands.HealthStatusProvider.FilterByProvidedHealthStatus C# (CSharp) Method

FilterByProvidedHealthStatus() private method

private FilterByProvidedHealthStatus ( IEnumerable machines ) : IEnumerable
machines IEnumerable
return IEnumerable
        IEnumerable<MachineResource> FilterByProvidedHealthStatus(IEnumerable<MachineResource> machines)
        {
            var statusFilter = new List<MachineModelHealthStatus>();
            if (healthStatuses.Count > 0)
            {
                log.Debug("Loading health statuses...");
                foreach (var status in healthStatuses)
                {
                    MachineModelHealthStatus result;
                    if (Enum.TryParse(status, true, out result))
                        statusFilter.Add(result);
                }
            }

            return statusFilter.Any()
                ? machines.Where(p => statusFilter.Contains(p.HealthStatus))
                : machines;
        }
    }