/// <summary> /// Conducts business rule evalution on a configuration /// </summary> /// <param name="configuration"></param> /// <returns>A collection of evaluation result, each of which describes a failed rule evalution; empty collection if the evaluation of all the rules passes</returns> public EvaluationResult Evaluate(Configuration configuration) { EvaluationResult evaluationResult = new EvaluationResult(); foreach (IEvaluationRule rule in m_evaluationRules) { EvaluationResultItem result = rule.Evaluate(configuration); if (!result.Passed) { evaluationResult.AddResultItem(result); } } return(evaluationResult); }
internal void AddResultItem(EvaluationResultItem item) { m_evaluationResultItems.Add(item); }