Example #1
0
        public override EventRuleElement GetRuleMatch(string collection, Configuration.EventRuleCollection eventRules)
        {
            var rule = eventRules.FirstOrDefault(r => r.Events.HasFlag(TfsEvents.ProjectDeleted) &&
                                                 collection.IsMatchOrNoPattern(r.TeamProjectCollection));

            return(rule);
        }
        public override EventRuleElement GetRuleMatch(string collection, Configuration.EventRuleCollection eventRules)
        {
            var rule = eventRules.FirstOrDefault(r => r.Events.HasFlag(TfsEvents.RepositoryCreated) &&
                                                 collection.IsMatchOrNoPattern(r.TeamProjectCollection) &&
                                                 ProjectName.IsMatchOrNoPattern(r.TeamProject) &&
                                                 RepoName.IsMatchOrNoPattern(r.GitRepository));

            return(rule);
        }
        public override EventRuleElement GetRuleMatch(string collection, Configuration.EventRuleCollection eventRules)
        {
            var rule = eventRules.FirstOrDefault(r => r.Events.HasFlag(TfsEvents.Checkin) &&
                                                 collection.IsMatchOrNoPattern(r.TeamProjectCollection) &&
                                                 (String.IsNullOrEmpty(r.TeamProject) || Projects.Keys.Any(n => Regex.IsMatch(n, r.TeamProject))) &&
                                                 (String.IsNullOrEmpty(r.TeamName) || Teams.Keys.Any(n => Regex.IsMatch(n, r.TeamName))));

            return(rule);
        }
        public override EventRuleElement GetRuleMatch(string collection, Configuration.EventRuleCollection eventRules)
        {
            var rule = eventRules.FirstOrDefault(r => r.Events.HasFlag(TfsEvents.BuildQualityChanged) &&
                                                 collection.IsMatchOrNoPattern(r.TeamProjectCollection) &&
                                                 ProjectName.IsMatchOrNoPattern(r.TeamProject) &&
                                                 BuildDefinition.IsMatchOrNoPattern(r.BuildDefinition));

            return(rule);
        }
        public override EventRuleElement GetRuleMatch(string collection, Configuration.EventRuleCollection eventRules)
        {
            var rule = eventRules.FirstOrDefault(r => r.Events.HasFlag(TfsEvents.Checkin) &&
                                                 collection.IsMatchOrNoPattern(r.TeamProjectCollection) &&
                                                 Projects.Keys.IsMatchOrNoPattern(r.TeamProject) &&
                                                 TeamNames.IsMatchOrNoPattern(r.TeamName) &&
                                                 SubmittedItems.IsMatchOrNoPattern(r.SourcePath));

            return(rule);
        }
        public override EventRuleElement GetRuleMatch(string collection, Configuration.EventRuleCollection eventRules)
        {
            var rule = eventRules.FirstOrDefault(r =>
                                                 r.Events.HasFlag(TfsEvents.WorkItemComment) &&
                                                 collection.IsMatchOrNoPattern(r.TeamProjectCollection) &&
                                                 ProjectName.IsMatchOrNoPattern(r.TeamProject) &&
                                                 WiType.IsMatchOrNoPattern(r.WorkItemType) &&
                                                 AreaPath.IsMatchOrNoPattern(r.AreaPath));

            return(rule);
        }
        public override EventRuleElement GetRuleMatch(string collection, Configuration.EventRuleCollection eventRules)
        {
            var rule = eventRules.FirstOrDefault(r =>
                                                 (r.Events.HasFlag(TfsEvents.WorkItemCreated) && IsNew ||
                                                  r.Events.HasFlag(TfsEvents.WorkItemChanged) && IsChangedFieldMatchOrNotSet(ChangedFields, r.WorkItemFieldItems)) &&
                                                 collection.IsMatchOrNoPattern(r.TeamProjectCollection) &&
                                                 ProjectName.IsMatchOrNoPattern(r.TeamProject) &&
                                                 WiType.IsMatchOrNoPattern(r.WorkItemType) &&
                                                 AreaPath.IsMatchOrNoPattern(r.AreaPath));

            return(rule);
        }
Example #8
0
        public override bool IsMatch(string collection, Configuration.EventRuleCollection eventRules)
        {
            var rule = eventRules.FirstOrDefault(r => r.Events.HasFlag(TfsEvents.ProjectDeleted) &&
                                                 collection.IsMatchOrNoPattern(r.TeamProjectCollection));

            if (rule != null)
            {
                return(rule.Notify);
            }

            return(false);
        }
        public override bool IsMatch(string collection, Configuration.EventRuleCollection eventRules)
        {
            var rule = eventRules.FirstOrDefault(r => r.Events.HasFlag(TfsEvents.Checkin) &&
                                                 collection.IsMatchOrNoPattern(r.TeamProjectCollection) &&
                                                 (String.IsNullOrEmpty(r.TeamProject) || Projects.Keys.Any(n => Regex.IsMatch(n, r.TeamProject))));

            if (rule != null)
            {
                return(rule.Notify);
            }

            return(false);
        }
Example #10
0
        public override bool IsMatch(string collection, Configuration.EventRuleCollection eventRules)
        {
            var rule = eventRules.FirstOrDefault(r => r.Events.HasFlag(TfsEvents.PullRequestCreated) &&
                                                 collection.IsMatchOrNoPattern(r.TeamProjectCollection) &&
                                                 ProjectName.IsMatchOrNoPattern(r.TeamProject) &&
                                                 RepoName.IsMatchOrNoPattern(r.GitRepository));

            if (rule != null)
            {
                return(rule.Notify);
            }

            return(false);
        }
Example #11
0
 public override bool IsMatch(string collection, Configuration.EventRuleCollection eventRules)
 {
     foreach (var rule in eventRules)
     {
         if (rule.Events.HasFlag(TfsEvents.BuildQualityChanged) &&
             collection.IsMatchOrNoPattern(rule.TeamProjectCollection) &&
             ProjectName.IsMatchOrNoPattern(rule.TeamProject) &&
             BuildDefinition.IsMatchOrNoPattern(rule.BuildDefinition))
         {
             return(rule.Notify);
         }
     }
     return(false);
 }
Example #12
0
        public override bool IsMatch(string collection, Configuration.EventRuleCollection eventRules)
        {
            var rule = eventRules.FirstOrDefault(r =>
                                                 (r.Events.HasFlag(TfsEvents.WorkItemStateChange) && IsStateChanged ||
                                                  r.Events.HasFlag(TfsEvents.WorkItemAssignmentChange) && IsAssignmentChanged) &&
                                                 collection.IsMatchOrNoPattern(r.TeamProjectCollection) &&
                                                 ProjectName.IsMatchOrNoPattern(r.TeamProject));

            if (rule != null)
            {
                return(rule.Notify);
            }

            return(false);
        }
 public override bool IsMatch(string collection, Configuration.EventRuleCollection eventRules)
 {
     foreach (var rule in eventRules)
     {
         if (BuildStatus.HasFlag(BuildStatus.Succeeded) && rule.Events.HasFlag(TfsEvents.BuildSucceeded) ||
             BuildStatus.HasFlag(BuildStatus.Failed) && rule.Events.HasFlag(TfsEvents.BuildFailed))
         {
             if (collection.IsMatchOrNoPattern(rule.TeamProjectCollection) &&
                 ProjectName.IsMatchOrNoPattern(rule.TeamProject) &&
                 BuildDefinition.IsMatchOrNoPattern(rule.BuildDefinition))
             {
                 return(rule.Notify);
             }
         }
     }
     return(false);
 }
Example #14
0
 public abstract bool IsMatch(string collection, Configuration.EventRuleCollection eventRules);
Example #15
0
 public abstract EventRuleElement GetRuleMatch(string collection, Configuration.EventRuleCollection eventRules);