示例#1
0
        /// <summary>
        /// Validate the integrity of this entity.
        /// </summary>
        public override void Validate(IEntity validationRoot, ValidationResults results)
        {
            base.Validate(validationRoot, results);
            if (WaitProbability > 0)
            {
                if (MinimumWaitTime > MaximumWaitTime)
                {
                    results.Warn(this, Strings.WarnBlockMinWaitTimeGreatThenMaxWaitTime);
                }
            }
            waitPermissions.Validate(validationRoot, results);
            var hasRoutesToMe   = Module.Routes.Any(x => x.To == this);
            var hasRoutesFromMe = Module.Routes.Any(x => x.From == this);

            if ((!hasRoutesFromMe) && (!hasRoutesToMe))
            {
                results.Warn(this, Strings.WarnBlockNoRoutesToOrFromMe);
            }
            else if (!hasRoutesFromMe)
            {
                results.Warn(this, Strings.WarnBlockNoRoutesFromMe);
            }
            else if (!hasRoutesToMe)
            {
                results.Warn(this, Strings.WarnBlockNoRoutesToMe);
            }
        }
 /// <summary>
 /// Validate the integrity of this entity.
 /// </summary>
 public override void Validate(IEntity validationRoot, ValidationResults results)
 {
     appliesTo.Validate(validationRoot, results);
 }