Exemplo n.º 1
0
 public void Execute(ValidatingVisitor validator, TDefinition definition, IValidationLog log)
 {
     ArgumentUtility.CheckNotNull("validator", validator);
     ArgumentUtility.CheckNotNull("definition", definition);
     ArgumentUtility.CheckNotNull("log", log);
     RuleDelegate(new Args(validator, definition, log, this));
 }
Exemplo n.º 2
0
        public static void Validate(IVisitableDefinition startingPoint, IValidationLog log, params IRuleSet[] customRuleSets)
        {
            ArgumentUtility.CheckNotNull("startingPoint", startingPoint);
            ArgumentUtility.CheckNotNull("log", log);
            ArgumentUtility.CheckNotNull("customRuleSets", customRuleSets);

            Validate(new[] { startingPoint }, log, customRuleSets);
        }
Exemplo n.º 3
0
 /// <summary>
 /// Validates this trigger.
 /// </summary>
 /// <param name="validationLog">The validation log.</param>
 public override void Validate(IValidationLog validationLog)
 {
     base.Validate(validationLog);
     foreach (var trigger in this.Triggers)
     {
         trigger.Validate(validationLog);
     }
 }
Exemplo n.º 4
0
 /// <summary>
 /// Validates this condition.
 /// </summary>
 /// <param name="validationLog">The validation log.</param>
 public override void Validate(IValidationLog validationLog)
 {
     base.Validate(validationLog);
     foreach (var child in this.Children)
     {
         child.Validate(validationLog);
     }
 }
 public override void Validate(IValidationLog validationLog)
 {
     base.Validate(validationLog);
     if (this.OnValidate != null)
     {
         this.OnValidate(validationLog);
     }
 }
Exemplo n.º 6
0
 /// <summary>
 /// Validates this condition.
 /// </summary>
 /// <param name="validationLog">The validation log.</param>
 public override void Validate(IValidationLog validationLog)
 {
     base.Validate(validationLog);
     if (string.IsNullOrEmpty(this.FileName))
     {
         validationLog.AddError("FileName has not been set");
     }
 }
Exemplo n.º 7
0
 /// <summary>
 /// Called when this task is validated.
 /// </summary>
 /// <param name="validationLog">The validation log.</param>
 protected override void OnValidate(IValidationLog validationLog)
 {
     base.OnValidate(validationLog);
     if (string.IsNullOrEmpty(this.ProjectName))
     {
         validationLog.AddError("ProjectName has not been set");
     }
 }
Exemplo n.º 8
0
 /// <summary>
 /// Validates this condition.
 /// </summary>
 /// <param name="validationLog">The validation log.</param>
 public override void Validate(IValidationLog validationLog)
 {
     base.Validate(validationLog);
     if (string.IsNullOrEmpty(this.FileName))
     {
         validationLog.AddError("FileName has not been set");
     }
 }
Exemplo n.º 9
0
 /// <summary>
 /// Called when this task is validated.
 /// </summary>
 /// <param name="validationLog">The validation log.</param>
 protected override void OnValidate(IValidationLog validationLog)
 {
     base.OnValidate(validationLog);
     if (string.IsNullOrEmpty(this.ProjectName))
     {
         validationLog.AddError("ProjectName has not been set");
     }
 }
Exemplo n.º 10
0
 /// <summary>
 /// Validates this channel.
 /// </summary>
 /// <param name="validationLog">The validation log.</param>
 public override void Validate(IValidationLog validationLog)
 {
     base.Validate(validationLog);
     if (string.IsNullOrEmpty(this.Name))
     {
         validationLog.AddWarning("Channel does not have a name");
     }
 }
Exemplo n.º 11
0
 /// <summary>
 /// Validates this item after it has been loaded.
 /// </summary>
 /// <param name="validationLog">The validation log.</param>
 public virtual void Validate(IValidationLog validationLog)
 {
     // Everything must have a name
     if (string.IsNullOrEmpty(this.Name))
     {
         validationLog.AddError("The {0} has no name specified.", this.ItemType);
     }
 }
Exemplo n.º 12
0
 /// <summary>
 /// Validates this trigger.
 /// </summary>
 /// <param name="validationLog">The validation log.</param>
 public override void Validate(IValidationLog validationLog)
 {
     base.Validate(validationLog);
     foreach (var trigger in this.Triggers)
     {
         trigger.Validate(validationLog);
     }
 }
Exemplo n.º 13
0
 /// <summary>
 /// Validates this trigger.
 /// </summary>
 /// <param name="validationLog">The validation log.</param>
 public override void Validate(IValidationLog validationLog)
 {
     base.Validate(validationLog);
     if (!this.Time.HasValue)
     {
         validationLog.AddError("No time set - trigger will not fire");
     }
 }
Exemplo n.º 14
0
 protected override void OnValidate(IValidationLog validationLog)
 {
     base.OnValidate(validationLog);
     if (this.OnValidateAction != null)
     {
         this.OnValidateAction(validationLog);
     }
 }
 public override void Validate(IValidationLog validationLog)
 {
     base.Validate(validationLog);
     if (this.OnValidate != null)
     {
         this.OnValidate(validationLog);
     }
 }
Exemplo n.º 16
0
 protected override void OnValidate(IValidationLog validationLog)
 {
     base.OnValidate(validationLog);
     if (this.OnValidateAction != null)
     {
         this.OnValidateAction(validationLog);
     }
 }
Exemplo n.º 17
0
 /// <summary>
 /// Validates this trigger.
 /// </summary>
 /// <param name="validationLog">The validation log.</param>
 public override void Validate(IValidationLog validationLog)
 {
     base.Validate(validationLog);
     if (!this.Time.HasValue)
     {
         validationLog.AddError("No time set - trigger will not fire");
     }
 }
Exemplo n.º 18
0
 /// <summary>
 /// Validates this condition.
 /// </summary>
 /// <param name="validationLog">The validation log.</param>
 public override void Validate(IValidationLog validationLog)
 {
     base.Validate(validationLog);
     foreach (var child in this.Children)
     {
         child.Validate(validationLog);
     }
 }
Exemplo n.º 19
0
 /// <summary>
 /// Validates this channel.
 /// </summary>
 /// <param name="validationLog">The validation log.</param>
 public override void Validate(IValidationLog validationLog)
 {
     base.Validate(validationLog);
     if (string.IsNullOrEmpty(this.Name))
     {
         validationLog.AddWarning("Channel does not have a name");
     }
 }
 /// <summary>
 /// Validates the this item after it has been loaded.
 /// </summary>
 /// <param name="validationLog">The validation log.</param>
 public override void Validate(IValidationLog validationLog)
 {
     base.Validate(validationLog);
     ValidationHelpers.CheckForDuplicateItems(this.Children, validationLog, "child");
     foreach (var child in this.Children)
     {
         child.Validate(validationLog);
     }
 }
Exemplo n.º 21
0
        private static ValidatingVisitor CreateValidatingVisitor(IValidationLog log, IRuleSet[] customRuleSets)
        {
            ValidatingVisitor visitor = new ValidatingVisitor(log);

            InstallDefaultRules(visitor);

            foreach (IRuleSet ruleSet in customRuleSets)
            {
                ruleSet.Install(visitor);
            }
            return(visitor);
        }
Exemplo n.º 22
0
            public Args(ValidatingVisitor validator, TDefinition definition, IValidationLog log, DelegateValidationRule <TDefinition> self)
            {
                ArgumentUtility.CheckNotNull("validator", validator);
                ArgumentUtility.CheckNotNull("definition", definition);
                ArgumentUtility.CheckNotNull("log", log);
                ArgumentUtility.CheckNotNull("self", self);

                _validator  = validator;
                _self       = self;
                _log        = log;
                _definition = definition;
            }
Exemplo n.º 23
0
        protected void SingleMust(bool test, IValidationLog log, IValidationRule rule)
        {
            ArgumentUtility.CheckNotNull("log", log);
            ArgumentUtility.CheckNotNull("rule", rule);

            if (!test)
            {
                log.Fail(rule);
            }
            else
            {
                log.Succeed(rule);
            }
        }
Exemplo n.º 24
0
        /// <summary>
        /// Checks for duplicate items.
        /// </summary>
        /// <param name="children">The children.</param>
        /// <param name="validationLog">The validation log.</param>
        /// <param name="itemName">Name of the item.</param>
        public static void CheckForDuplicateItems(
            IEnumerable<ServerItem> children,
            IValidationLog validationLog,
            string itemName)
        {
            var childNames = new Dictionary<string, int>();
            foreach (var child in children ?? new ServerItem[0])
            {
                UpdateCount(child, childNames);
            }

            foreach (var duplicate in childNames.Where(v => v.Value > 1))
            {
                validationLog.AddError("Duplicate {1} name detected: '{0}'", duplicate.Key, itemName);
            }
        }
Exemplo n.º 25
0
        /// <summary>
        /// Validates this project after it has been loaded.
        /// </summary>
        /// <param name="validationLog"></param>
        public override void Validate(IValidationLog validationLog)
        {
            base.Validate(validationLog);

            // Check all the pre-build tasks
            foreach (var task in this.PreBuild)
            {
                task.Validate(validationLog);
            }

            // Check all the publisher tasks
            foreach (var task in this.Publishers)
            {
                task.Validate(validationLog);
            }
        }
Exemplo n.º 26
0
        /// <summary>
        /// Validates this project after it has been loaded.
        /// </summary>
        /// <param name="validationLog"></param>
        public override void Validate(IValidationLog validationLog)
        {
            base.Validate(validationLog);

            // Check all the pre-build tasks
            foreach (var task in this.PreBuild)
            {
                task.Validate(validationLog);
            }

            // Check all the publisher tasks
            foreach (var task in this.Publishers)
            {
                task.Validate(validationLog);
            }
        }
Exemplo n.º 27
0
        /// <summary>
        /// Validates this task after it has been loaded.
        /// </summary>
        public void Validate(IValidationLog validationLog)
        {
            logger.Debug("Validating task '{0}'", this.NameOrType);
            this.OnValidate(validationLog);

            foreach (var condition in this.Conditions ?? new TaskCondition[0])
            {
                condition.Validate(validationLog);
            }

            foreach (var failureAction in this.FailureActions ?? new TaskFailureAction[0])
            {
                failureAction.Validate(validationLog);
            }

            this.State = TaskState.Validated;
        }
Exemplo n.º 28
0
        /// <summary>
        /// Checks for duplicate items.
        /// </summary>
        /// <param name="children">The children.</param>
        /// <param name="validationLog">The validation log.</param>
        /// <param name="itemName">Name of the item.</param>
        public static void CheckForDuplicateItems(
            IEnumerable <ServerItem> children,
            IValidationLog validationLog,
            string itemName)
        {
            var childNames = new Dictionary <string, int>();

            foreach (var child in children ?? new ServerItem[0])
            {
                UpdateCount(child, childNames);
            }

            foreach (var duplicate in childNames.Where(v => v.Value > 1))
            {
                validationLog.AddError("Duplicate {1} name detected: '{0}'", duplicate.Key, itemName);
            }
        }
Exemplo n.º 29
0
        /// <summary>
        /// Validates this project after it has been loaded.
        /// </summary>
        public override void Validate(IValidationLog validationLog)
        {
            logger.Debug("Validating project '{0}'", this.Name ?? string.Empty);
            base.Validate(validationLog);
            foreach (var task in this.Tasks)
            {
                task.Validate(validationLog);
            }

            foreach (var trigger in this.Triggers)
            {
                trigger.Validate(validationLog);
            }

            foreach (var sourceControl in this.SourceControl)
            {
                sourceControl.Validate(validationLog);
            }
        }
Exemplo n.º 30
0
        /// <summary>
        /// Validates this server after it has been loaded.
        /// </summary>
        /// <param name="validationLog">The validation log.</param>
        public virtual void Validate(IValidationLog validationLog)
        {
            logger.Debug("Validating server '{0}'", this.Name ?? string.Empty);

            // Everything must have a name
            if (string.IsNullOrEmpty(this.Name))
            {
                validationLog.AddError("The Server has no name specified.");
            }

            // Validate the children
            foreach (var child in this.Children)
            {
                child.Validate(validationLog);
            }

            // Check if there are any duplicated children
            ValidationHelpers.CheckForDuplicateItems(this.Children, validationLog, "child");
            var projects = this.Children
                           .SelectMany(c => c.ListProjects());

            ValidationHelpers.CheckForDuplicateItems(projects, validationLog, "project");
        }
 /// <summary>
 /// Validates this block.
 /// </summary>
 /// <param name="validationLog">The validation log.</param>
 public virtual void Validate(IValidationLog validationLog)
 {
 }
Exemplo n.º 32
0
 /// <summary>
 /// Validates this trigger.
 /// </summary>
 /// <param name="validationLog">The validation log.</param>
 public virtual void Validate(IValidationLog validationLog)
 {
     logger.Debug("Validating trigger '{0}'", this.NameOrType);
 }
Exemplo n.º 33
0
 /// <summary>
 /// Called when this task is validated.
 /// </summary>
 /// <param name="validationLog">The validation log.</param>
 protected virtual void OnValidate(IValidationLog validationLog)
 {
 }
Exemplo n.º 34
0
 /// <summary>
 /// Validates this item after it has been loaded.
 /// </summary>
 /// <param name="validationLog">The validation log.</param>
 public virtual void Validate(IValidationLog validationLog)
 {
     // Everything must have a name
     if (string.IsNullOrEmpty(this.Name))
     {
         validationLog.AddError("The {0} has no name specified.", this.ItemType);
     }
 }
Exemplo n.º 35
0
 private ValidationException SetUpExceptionWithDummyStackTrace(string exceptionMessage, IValidationLog validationLog)
 {
     try
     {
         throw new ValidationException(exceptionMessage, validationLog);
     }
     catch (ValidationException caughtException)
     {
         return(caughtException);
     }
 }
Exemplo n.º 36
0
        /// <summary>
        /// Validates this task after it has been loaded.
        /// </summary>
        public void Validate(IValidationLog validationLog)
        {
            logger.Debug("Validating task '{0}'", this.NameOrType);
            this.OnValidate(validationLog);

            foreach (var condition in this.Conditions ?? new TaskCondition[0])
            {
                condition.Validate(validationLog);
            }

            foreach (var failureAction in this.FailureActions ?? new TaskFailureAction[0])
            {
                failureAction.Validate(validationLog);
            }

            this.State = TaskState.Validated;
        }
Exemplo n.º 37
0
 /// <summary>
 /// Validates this channel.
 /// </summary>
 /// <param name="validationLog">The validation log.</param>
 public virtual void Validate(IValidationLog validationLog)
 {
 }
 /// <summary>
 /// Validates the this item after it has been loaded.
 /// </summary>
 /// <param name="validationLog">The validation log.</param>
 public override void Validate(IValidationLog validationLog)
 {
     base.Validate(validationLog);
     ValidationHelpers.CheckForDuplicateItems(this.Children, validationLog, "child");
     foreach (var child in this.Children)
     {
         child.Validate(validationLog);
     }
 }
Exemplo n.º 39
0
        public static void Validate(IEnumerable <IVisitableDefinition> startingPoints, IValidationLog log, params IRuleSet[] customRuleSets)
        {
            ArgumentUtility.CheckNotNull("startingPoints", startingPoints);
            ArgumentUtility.CheckNotNull("log", log);
            ArgumentUtility.CheckNotNull("customRuleSets", customRuleSets);

            var visitor = CreateValidatingVisitor(log, customRuleSets);

            foreach (IVisitableDefinition startingPoint in startingPoints)
            {
                startingPoint.Accept(visitor);
            }
        }
Exemplo n.º 40
0
        /// <summary>
        /// Validates this server after it has been loaded.
        /// </summary>
        /// <param name="validationLog">The validation log.</param>
        public virtual void Validate(IValidationLog validationLog)
        {
            logger.Debug("Validating server '{0}'", this.Name ?? string.Empty);

            // Everything must have a name
            if (string.IsNullOrEmpty(this.Name))
            {
                validationLog.AddError("The Server has no name specified.");
            }

            // Validate the children
            foreach (var child in this.Children)
            {
                child.Validate(validationLog);
            }

            // Check if there are any duplicated children
            ValidationHelpers.CheckForDuplicateItems(this.Children, validationLog, "child");
            var projects = this.Children
                .SelectMany(c => c.ListProjects());
            ValidationHelpers.CheckForDuplicateItems(projects, validationLog, "project");
        }
Exemplo n.º 41
0
 /// <summary>
 /// Called when this task is validated.
 /// </summary>
 /// <param name="validationLog">The validation log.</param>
 protected virtual void OnValidate(IValidationLog validationLog)
 {
 }
 public ValidatingVisitor(IValidationLog validationLog)
 {
     ArgumentUtility.CheckNotNull("validationLog", validationLog);
     _validationLog = validationLog;
 }
Exemplo n.º 43
0
 /// <summary>
 /// Validates this block.
 /// </summary>
 /// <param name="validationLog">The validation log.</param>
 public override void Validate(IValidationLog validationLog)
 {
     throw new NotImplementedException();
 }
Exemplo n.º 44
0
 /// <summary>
 /// Validates this trigger.
 /// </summary>
 /// <param name="validationLog">The validation log.</param>
 public virtual void Validate(IValidationLog validationLog)
 {
     logger.Debug("Validating trigger '{0}'", this.NameOrType);
 }
 public void MergeIn(IValidationLog log)
 {
     _data.Add(log.GetData());
 }
Exemplo n.º 46
0
 /// <summary>
 /// Validates this block.
 /// </summary>
 /// <param name="validationLog">The validation log.</param>
 public override void Validate(IValidationLog validationLog)
 {
     throw new NotImplementedException();
 }