static MomaNode GetNodes(DataRowCollection rows) { MomaNode root = new MomaNode(""); Dictionary <string, MomaNode> namespaces = new Dictionary <string, MomaNode> (); Dictionary <string, MomaNode> types = new Dictionary <string, MomaNode> (); foreach (MomaDataSet.MembersRow row in rows) { string ns; string type; string name; SplitMember(row.Name, out ns, out type, out name); if (type == "BrowserCapabilitiesFactory") { continue; } if (ns == "System.Web.UI.WebControls.WebParts") { continue; } if (ns == "System.Management" || ns == "System.Management.Instrumentation") { continue; } MomaNode nsnode; if (!namespaces.TryGetValue(ns, out nsnode)) { nsnode = new MomaNode(ns); namespaces [ns] = nsnode; root.ChildNodes.Add(nsnode); } MomaNode typenode; if (!types.TryGetValue(ns + type, out typenode)) { typenode = new MomaNode(type); types [ns + type] = typenode; nsnode.ChildNodes.Add(typenode); } MomaNode new_node = new MomaNode(name); new_node.FullName = row.Name; new_node.NumberOfUses = row.Count; if (row.IsTodo) { new_node.Status |= NodeStatus.Todo; } if (row.IsNiex) { new_node.Status |= NodeStatus.Niex; } if (row.IsMissing) { new_node.Status |= NodeStatus.Missing; } typenode.ChildNodes.Add(new_node); } root.SortAndCount(); return(root); }
static MomaNode GetNodes(DataRowCollection rows) { MomaNode root = new MomaNode(""); Dictionary <string, MomaNode> namespaces = new Dictionary <string, MomaNode> (); Dictionary <string, MomaNode> types = new Dictionary <string, MomaNode> (); foreach (MomaDataSet.MembersRow row in rows) { string ns; string type; string name; SplitMember(row.Name, out ns, out type, out name); MomaNode nsnode; if (!namespaces.TryGetValue(ns, out nsnode)) { nsnode = new MomaNode(ns); namespaces [ns] = nsnode; root.ChildNodes.Add(nsnode); } MomaNode typenode; if (!types.TryGetValue(ns + type, out typenode)) { typenode = new MomaNode(type); types [ns + type] = typenode; nsnode.ChildNodes.Add(typenode); } MomaNode new_node = new MomaNode(name); new_node.FullName = row.Name; new_node.NumberOfUses = row.Count; if (row.IsTodo) { new_node.Status |= NodeStatus.Todo; } if (row.IsNiex) { new_node.Status |= NodeStatus.Niex; } if (row.IsMissing) { new_node.Status |= NodeStatus.Missing; } typenode.ChildNodes.Add(new_node); } root.SortAndCount(); return(root); }