Exemple #1
0
        public IList <GroupedDisplayablePipeline> Filter(Profile profile)
        {
            IList <GroupedDisplayablePipeline> groupedDisplayablePipelines = new List <GroupedDisplayablePipeline>();

            if (profile.PipelineGroups.Count > 0)
            {
                foreach (var group in profile.PipelineGroups)
                {
                    var groupedDisplayablePipeline = new GroupedDisplayablePipeline();
                    foreach (var pipeline in group.ProfilePipelines)
                    {
                        var pipeline1           = pipeline;
                        var displayablePipeline = _displayablePipelines.FirstOrDefault(x => x.Name == pipeline1.Name);
                        groupedDisplayablePipeline.Name     = group.Name;
                        groupedDisplayablePipeline.ShowName = group.ShowName;
                        if (displayablePipeline != null && profile.Statuses.Contains(displayablePipeline.ActualStatus))
                        {
                            displayablePipeline.HideBuildInfo = pipeline.HideBuildInfo;
                            displayablePipeline.Alias         = pipeline.Alias;
                            groupedDisplayablePipeline.Pipelines.Add(displayablePipeline);
                        }
                    }
                    groupedDisplayablePipelines.Add(groupedDisplayablePipeline);
                }
            }
            else
            {
                var groupedDisplayablePipeline = new GroupedDisplayablePipeline {
                    Name = "All", ShowName = false
                };
                foreach (var displayablePipeline in _displayablePipelines)
                {
                    if (displayablePipeline != null && profile.Statuses.Contains(displayablePipeline.ActualStatus))
                    {
                        groupedDisplayablePipeline.Pipelines.Add(displayablePipeline);
                    }
                }

                groupedDisplayablePipelines.Add(groupedDisplayablePipeline);
            }
            return(groupedDisplayablePipelines);
        }
        public IList<GroupedDisplayablePipeline> Filter(Profile profile)
        {
            IList<GroupedDisplayablePipeline> groupedDisplayablePipelines = new List<GroupedDisplayablePipeline>();
            if (profile.PipelineGroups.Count > 0)
            {
                foreach (var group in profile.PipelineGroups)
                {
                    var groupedDisplayablePipeline = new GroupedDisplayablePipeline();
                    foreach (var pipeline in group.ProfilePipelines)
                    {
                        var pipeline1 = pipeline;
                        var displayablePipeline = _displayablePipelines.FirstOrDefault(x => x.Name == pipeline1.Name);
                        groupedDisplayablePipeline.Name = group.Name;
                        groupedDisplayablePipeline.ShowName = group.ShowName;
                        if (displayablePipeline != null && profile.Statuses.Contains(displayablePipeline.ActualStatus))
                        {
                            displayablePipeline.HideBuildInfo = pipeline.HideBuildInfo;
                            displayablePipeline.Alias = pipeline.Alias;
                            groupedDisplayablePipeline.Pipelines.Add(displayablePipeline);
                        }
                    }
                    groupedDisplayablePipelines.Add(groupedDisplayablePipeline);
                }
            }
            else
            {
                var groupedDisplayablePipeline = new GroupedDisplayablePipeline { Name = "All", ShowName = false };
                foreach (var displayablePipeline in _displayablePipelines)
                {
                    if (displayablePipeline != null && profile.Statuses.Contains(displayablePipeline.ActualStatus))
                    {
                        groupedDisplayablePipeline.Pipelines.Add(displayablePipeline);
                    }
                }

                groupedDisplayablePipelines.Add(groupedDisplayablePipeline);
            }
            return groupedDisplayablePipelines;
        }