decimal CalcPercentage(List <ProbeResultStatus> results, ProbeResultStatus status) { decimal totalCount = Convert.ToDecimal(results.Count); decimal statusCount = Convert.ToDecimal(results.Count(x => x == status)); return(Convert.ToDecimal(statusCount / totalCount * 100)); }
private ProbeResult(int failedProbeCount, ProbeResultStatus status, bool isDirectProbe, int intermediaryHealthDegradationScore) { FailedProbeCount = failedProbeCount; Status = status; IsDirectProbe = isDirectProbe; IntermediaryHealthDegradationScore = intermediaryHealthDegradationScore; }
public void Add <T>(ProbeResultStatus status, string reason, string remediation) where T : DiagnosticProbe { _articles.Add(new KnowledgeBaseArticle { Id = typeof(T).GetIdentifier(), Status = status, Reason = reason, Remediation = remediation }); }
public KnowledgeBaseArticleImpl(ProbeResultStatus status, string reason, string remediation) { Status = status; Reason = reason; Remediation = remediation; Id = typeof(T).GetIdentifier(); }
public bool TryGet(string identifier, ProbeResultStatus status, out KnowledgeBaseArticle article) { if (_articles.Exists(x => x.Id == identifier)) { try { article = _articles.Single(x => x.Id == identifier && x.Status == status); return(true); } catch { article = new MissingKnowledgeBaseArticle(identifier, status); return(false); } } article = new MissingKnowledgeBaseArticle(identifier, status); return(false); }
public static ProbeResult CreateIndirect(int failedProbeCount, ProbeResultStatus status, IndirectProbeResponse indirectProbeResponse) => new ProbeResult(failedProbeCount, status, isDirectProbe: false, indirectProbeResponse.IntermediaryHealthScore);
public static ProbeResult CreateDirect(int failedProbeCount, ProbeResultStatus status) => new ProbeResult(failedProbeCount, status, isDirectProbe: true, 0);
public MissingKnowledgeBaseArticle(string identifier, ProbeResultStatus status) { Id = identifier; Status = status; }
public void Add <T>(ProbeResultStatus status, string reason, string remediation) where T : DiagnosticProbe { _articles.Add(new KnowledgeBaseArticleImpl <T>(status, reason, remediation)); }