public override void ValidateModelsInApplication(ApplicationModel <ApplicationSPI> appModel, ApplicationValidationResultMutable appValidation) { var sModels = appModel.CompositeModels.Values.OfType <ServiceCompositeModel>().ToArray(); if (sModels.Any(sModel => sModel.ServiceID == null)) { appValidation.InternalValidationErrors.Add(ValidationErrorFactory.NewInternalError("The following service composite models had their service ID as null: " + String.Join(", ", sModels.Where(sModel => sModel.ServiceID == null)), null)); } else { var grouping = sModels.GroupBy(sModel => sModel.ServiceID).Where(g => g.Count() > 1).ToArray(); if (grouping.Length > 0) { appValidation.StructureValidationErrors.Add(ValidationErrorFactory.NewStructureError("The following services have same service ID: " + String.Join("; ", grouping.Select(g => String.Join(", ", g))), appModel)); } } }
protected abstract void ValidateApplicationModel(ApplicationValidationResultMutable result);
public virtual void ValidateModelsInApplication(ApplicationModel <ApplicationSPI> appModel, ApplicationValidationResultMutable appValidation) { // Do nothing by default }