public Rule(RuleTrigger trigger, RuleAction action) { Guard.NotNull(trigger, nameof(trigger)); Guard.NotNull(action, nameof(action)); this.trigger = trigger; this.action = action; }
public Rule(RuleTrigger trigger, RuleAction action) { Guard.NotNull(trigger); Guard.NotNull(action); SetTrigger(trigger); SetAction(action); }
public Rule(RuleTrigger trigger, RuleAction action) { Guard.NotNull(trigger); Guard.NotNull(action); Action = action; Trigger = trigger; }
public Rule(RuleTrigger trigger, RuleAction action) { Guard.NotNull(trigger); Guard.NotNull(action); this.trigger = trigger; this.trigger.Freeze(); this.action = action; this.action.Freeze(); }
public void Update(RuleTrigger newTrigger) { Guard.NotNull(newTrigger, nameof(newTrigger)); if (newTrigger.GetType() != trigger.GetType()) { throw new ArgumentException("New trigger has another type.", nameof(newTrigger)); } trigger = newTrigger; }
public Rule Update(RuleTrigger newTrigger) { Guard.NotNull(newTrigger, nameof(newTrigger)); if (newTrigger.GetType() != trigger.GetType()) { throw new ArgumentException("New trigger has another type.", nameof(newTrigger)); } return(Clone(clone => { clone.trigger = newTrigger; })); }
public Rule Update(RuleTrigger newTrigger) { Guard.NotNull(newTrigger); if (newTrigger.GetType() != trigger.GetType()) { throw new ArgumentException("New trigger has another type.", nameof(newTrigger)); } if (trigger.DeepEquals(newTrigger)) { return(this); } return(Clone(clone => { clone.SetTrigger(newTrigger); })); }
private void SetTrigger(RuleTrigger newTrigger) { trigger = newTrigger; trigger.Freeze(); }
public bool DeepEquals(RuleTrigger action) { return(this.WithDeepEqual(action).IgnoreProperty <Freezable>(x => x.IsFrozen).Compare()); }
public bool DeepEquals(RuleTrigger action) { return(SimpleEquals.IsEquals(this, action)); }