protected void SetUpRule <T>() where T : BaseRule, new() { var metadata = new RuleMetadata(typeof(T)); _ruleMap[typeof(T)] = metadata; _firedRulesMap[metadata.Name] = new List <AgendaEventArgs>(); Repository.Load(x => x.From(typeof(T))); }
public ReviewRule EvaluateRule <Model, Context>( RuleMetadata metadata, Model model, Context context) { var rule = typeResolver.Resolve <IRule <Model, Context> >(metadata.RuleType); return(new ReviewRule() { BusinessId = metadata.BusinessId, Message = rule.Message, IsSatisfied = rule.IsSatisfiedBy(model, context) }); }
private IRuleDefinition BuildDefinition() { var metadata = new RuleMetadata(GetType()); _builder.Name(metadata.Name); _builder.Description(metadata.Description); _builder.Tags(metadata.Tags); Define(); return(_builder.Build()); }
public async Task <ReviewRule> EvaluateRuleAsync <Model, Context>( RuleMetadata metadata, Model model, Context context) { var rule = typeResolver.Resolve <IRuleAsync <Model, Context> >(metadata.RuleType); var result = await rule.IsSatisfiedBy(model, context); return(new ReviewRule { BusinessId = metadata.BusinessId, Message = rule.Message, IsSatisfied = result }); }
public DummyCFamilyRulesConfig AddRule(string partialRuleKey, IssueSeverity issueSeverity, bool isActive, Dictionary <string, string> parameters) { ruleKeyToActiveMap[partialRuleKey] = isActive; RulesMetadata[partialRuleKey] = new RuleMetadata { DefaultSeverity = issueSeverity }; if (parameters != null) { RulesParameters[partialRuleKey] = parameters; } return(this); }
private IRuleDefinition BuildDefinition() { var metadata = new RuleMetadata(GetType()); _builder.Name(metadata.Name); _builder.Description(metadata.Description); _builder.Tags(metadata.Tags); if (metadata.Priority.HasValue) { _builder.Priority(metadata.Priority.Value); } if (metadata.Repeatability.HasValue) { _builder.Repeatability(metadata.Repeatability.Value); } Define(); return(_builder.Build()); }
public CompiledRule(RuleEngine engine, RuleMetadata metadata) { this.engine = engine; this.metadata = metadata; }
public DummyCFamilyRulesConfig AddRule(string partialRuleKey, bool isActive) { ruleKeyToActiveMap[partialRuleKey] = isActive; RulesMetadata[partialRuleKey] = new RuleMetadata(); return(this); }
private IRuleDefinition BuildDefinition() { var metadata = new RuleMetadata(GetType()); _builder.Name(metadata.Name); _builder.Description(metadata.Description); _builder.Tags(metadata.Tags); if (metadata.Priority.HasValue) { _builder.Priority(metadata.Priority.Value); } if (metadata.Repeatability.HasValue) { _builder.Repeatability(metadata.Repeatability.Value); } Define(); return _builder.Build(); }