/// <summary> /// Constructor. Null parameters will be converted to empty strings. Simple validation issues may not /// have a recommendation. More complex problems, for example when cross-checking dataset components, may have /// a correspondingly more complex recommendation. </summary> /// <param name="data"> object that has the problem. </param> /// <param name="problem"> description of validation problem. </param> /// <param name="recommendation"> recommendation of how to correct the problem. </param> public StateCU_ComponentValidationProblem(StateCU_ComponentValidator data, string problem, string recommendation) { __problem = problem; if (string.ReferenceEquals(__problem, null)) { __problem = ""; } __data = data; __recommendation = recommendation; if (string.ReferenceEquals(__recommendation, null)) { __recommendation = ""; } }
/// <summary> /// Performs specific data checks for a component. The /// intelligence and checks are stored in the component itself. </summary> /// <param name="data"> List of data objects to check. </param> /// <returns> List of data that failed the data checks. </returns> private System.Collections.IList doSpecificDataChecks(IList <StateCU_ComponentValidator> data, PropList props) { System.Collections.IList checks = new List <object>(); if (data == null) { return(checks); } // Check each component object by calling the // checkComponentData() method. Each component // needs to implement this method and extend from // the StateMod_Component interface StateCU_ComponentValidator comp = null; for (int i = 0; i < data.Count; i++) { comp = data[i]; StateCU_ComponentValidation validation = comp.validateComponent(__dataset); if (validation.size() > 0) { checks.Add(validation.getAll()); } } return(checks); }