public void InitializeStringMatcher(IBranchNameExtractor nameExtractor) { var list = string.Join('.', new[] { _projectConfiguration.BranchBlacklist, _projectConfiguration.BranchWhitelist, _projectConfiguration.BuildDefinitionBlacklist, _projectConfiguration.BuildDefinitionWhitelist }.Flatten()); if (_lastLoadedLists == list) { return; } _lastLoadedLists = list; _allowingMatchers = new List <IBuildMatcher> { new DefinitionMatcher(Matchers(_projectConfiguration.BuildDefinitionWhitelist)), new BranchMatcher(nameExtractor, Matchers(_projectConfiguration.BranchWhitelist)) }; _forbiddingMatchers = new List <IBuildMatcher> { new DefinitionMatcher(Matchers(_projectConfiguration.BuildDefinitionBlacklist)), new BranchMatcher(nameExtractor, Matchers(_projectConfiguration.BranchBlacklist)) }; }
public TreeBuilder(IConfiguration config, IBranchNameExtractor branchNameExtractor) { _config = config; _branchNameExtractor = branchNameExtractor; }
public BranchMatcher(IBranchNameExtractor branchNameExtractor, IEnumerable <StringMatcher> matchers) { _branchNameExtractor = branchNameExtractor; _matchers = matchers.ToList(); }
public ListBuildFilter(IProjectConfiguration projectConfiguration, IBranchNameExtractor branchNameExtractor) { _projectConfiguration = projectConfiguration; InitializeStringMatcher(branchNameExtractor); }