protected virtual void InitializePipelines() { var nodes = BaseFactory.GetConfigNodes("pipelines/*"); foreach (XmlNode node in nodes) { var groupName = node.Attributes["groupName"]?.Value; if (groupName != null) { ConfiguredPipelines.AddRange(node.SelectNodes("pipelines/*").Cast <XmlNode>().Select(child => new PipelineWrapper(groupName, child.Name))); } else { ConfiguredPipelines.Add(new PipelineWrapper(string.Empty, node.Name)); } } ConfiguredPipelines = ConfiguredPipelines.OrderBy(p => p.Group).ThenBy(p => p.Name).ToList(); }