public SolutionsExValidator( IHttpContextAccessor context, ILogger <SolutionsExValidator> logger, ISolutionsValidator solutionsValidator) : base(context, logger) { _solutionsValidator = solutionsValidator; RuleSet(nameof(ISolutionsExLogic.Update), () => { // use Solution validator MustBeValidSolution(); // internal consistency checks ClaimedCapabilityMustBelongToSolution(); ClaimedCapabilityEvidenceMustBelongToClaim(); ClaimedCapabilityReviewMustBelongToEvidence(); ClaimedStandardMustBelongToSolution(); ClaimedStandardEvidenceMustBelongToClaim(); ClaimedStandardReviewMustBelongToEvidence(); TechnicalContactMustBelongToSolution(); // all previous versions in solution ClaimedCapabilityEvidencePreviousVersionMustBelongToSolution(); ClaimedStandardEvidencePreviousVersionMustBelongToSolution(); ClaimedCapabilityReviewPreviousVersionMustBelongToSolution(); ClaimedStandardReviewPreviousVersionMustBelongToSolution(); }); }
public SolutionsLogic( ISolutionsModifier modifier, ISolutionsDatastore datastore, IContactsDatastore contacts, IHttpContextAccessor context, ISolutionsValidator validator, ISolutionsFilter filter, IEvidenceBlobStoreLogic evidenceBlobStoreLogic) : base(context) { _modifier = modifier; _datastore = datastore; _contacts = contacts; _validator = validator; _filter = filter; _evidenceBlobStoreLogic = evidenceBlobStoreLogic; }
public SolutionsExValidator( IHttpContextAccessor context, ILogger <SolutionsExValidator> logger, ISolutionsExDatastore datastore, ISolutionsValidator solutionsValidator) : base(context, logger) { _datastore = datastore; _solutionsValidator = solutionsValidator; RuleSet(nameof(ISolutionsExLogic.Update), () => { // use Solution validator MustBeValidSolution(); // internal consistency checks ClaimedCapabilityMustBelongToSolution(); ClaimedCapabilityEvidenceMustBelongToClaim(); ClaimedCapabilityReviewMustBelongToEvidence(); ClaimedStandardMustBelongToSolution(); ClaimedStandardEvidenceMustBelongToClaim(); ClaimedStandardReviewMustBelongToEvidence(); TechnicalContactMustBelongToSolution(); // all previous versions in solution ClaimedCapabilityEvidencePreviousVersionMustBelongToSolution(); ClaimedStandardEvidencePreviousVersionMustBelongToSolution(); ClaimedCapabilityReviewPreviousVersionMustBelongToSolution(); ClaimedStandardReviewPreviousVersionMustBelongToSolution(); // One Rule to rule them all, // One Rule to find them, // One Rule to bring them all, // and in the darkness bind them CheckUpdateAllowed(); }); }