public ResourceRule(int resourceId, IRule parentRule, ILocalizableMessage message = null) { // Create Context Context = new ContextModel((resourceId, null), this); ParentRule = parentRule; _buildMessage = message == null ? (Func <ILocalizableMessage>)MessageMap : () => message; }
public StateItem(ILocalizableMessage localizableMessage) { switch (localizableMessage.Type) { case LocalizableMessageType.Error: { Type = StateItemType.Error; break; } case LocalizableMessageType.Warning: { Type = StateItemType.Warning; break; } default: throw new System.ComponentModel.InvalidEnumArgumentException(nameof(localizableMessage.Type), (int)localizableMessage.Type, localizableMessage.GetType()); } RuleMessage = localizableMessage; }
/// <summary> /// Operator to check on a context /// </summary> /// <param name="context">Context for Operator</param> /// <param name="func">Function for the context</param> /// <param name="message">Is currently not supported</param> /// <param name="parentRule"></param> public ValidOperatorRule(TContext context, Func <TContext, bool> func, ILocalizableMessage message = null, IRule parentRule = null, string ruleName = null) : this((c) => true, context, func, message, parentRule, ruleName) { }
public ValidOperatorRule(Func <TContext, bool> condition, TContext context, Func <TContext, bool> func, ILocalizableMessage message = null, IRule parentRule = null, string ruleName = null) { _condition = condition; _context = context; _func = func; Message = message ?? new NotAllowedByRule(); ParentRule = parentRule; RuleName = ruleName; }
/// <summary> /// If there is no resource id and resource is searched by predicate /// </summary> /// <param name="predicate">the where clause</param> /// <param name="parentRule">parent rule</param> /// <param name="message">custom message</param> public ResourceRule(Expression <Func <T, bool> > predicate, IRule parentRule, ILocalizableMessage message = null) { // Create Context Context = new ContextModel((null, predicate), this); ParentRule = parentRule; _buildMessage = message == null ? (Func <ILocalizableMessage>)MessageMap : () => message; }
public ErrorHandler AddMessage(ILocalizableMessage message) { Messages.Add(message); return(this); }
public void Add(ILocalizableMessage message) { Add(new StateItem(message)); }