CCNet.Build.Reconfigure.PageBuilder.Rebuild C# (CSharp) Method

Rebuild() public method

public Rebuild ( string spaceCode, string pageName ) : void
spaceCode string
pageName string
return void
		public void Rebuild(string spaceCode, string pageName)
		{
			Console.Write("Reading projects page and subtree... ");
			var root = m_confluence.GetPageSummary(spaceCode, pageName);
			var tree = m_confluence.GetSubtree(root.Id);
			Console.WriteLine("OK");

			m_children = tree.GroupBy(p => p.ParentId).ToDictionary(g => g.Key, g => g.ToList());

			var result = new ConcurrentBag<IProjectPage>();

			var areas = m_children[root.Id];
			Parallel.ForEach(
				areas,
				new ParallelOptions { MaxDegreeOfParallelism = 5 },
				area =>
				{
					var pages = RebuildArea(area);
					foreach (var page in pages)
					{
						result.Add(page);
					}
				});

			var updated = UpdateSummaryPage(result, root);
			if (updated)
			{
				Console.WriteLine("Rebuild projects summary ... UPDATED");
			}
			else
			{
				Console.WriteLine("Rebuild projects summary ... not changed");
			}

			m_pages = result.ToList();
		}