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;
}
}