private void WriteItem(CoverageItem item, Type stopLevel, int level) { if (item.filtered) return; if (item.hit + item.missed == 0) // Filtered return; if (level == 0) return; if (item.GetType () == stopLevel) return; if (item is CoverageModel) { writer.WriteStartElement ("project"); writer.WriteAttributeString ("name", "Project"); } else if (item is NamespaceCoverageItem) { NamespaceCoverageItem ns = (NamespaceCoverageItem)item; writer.WriteStartElement ("namespace"); if (ns.ns == "<GLOBAL>") writer.WriteAttributeString ("name", "GLOBAL"); else writer.WriteAttributeString ("name", ns.ns); } else if (item is ClassCoverageItem) { ClassCoverageItem klass = (ClassCoverageItem)item; writer.WriteStartElement ("class"); writer.WriteAttributeString ("name", klass.name); writer.WriteAttributeString ("fullname", klass.FullName.Replace ('/', '.')); } WriteCoverage (item); if (item.ChildCount > 0) foreach (CoverageItem child in item.children) WriteItem (child, stopLevel, level - 1); writer.WriteEndElement (); }
private void WriteItem(CoverageItem item, Type stopLevel, int level) { if (item.filtered) { return; } if (item.hit + item.missed == 0) { // Filtered return; } if (level == 0) { return; } if (item.GetType() == stopLevel) { return; } if (item is CoverageModel) { writer.WriteStartElement("project"); writer.WriteAttributeString("name", "Project"); } else if (item is NamespaceCoverageItem) { NamespaceCoverageItem ns = (NamespaceCoverageItem)item; writer.WriteStartElement("namespace"); if (ns.ns == "<GLOBAL>") { writer.WriteAttributeString("name", "GLOBAL"); } else { writer.WriteAttributeString("name", ns.ns); } } else if (item is ClassCoverageItem) { ClassCoverageItem klass = (ClassCoverageItem)item; writer.WriteStartElement("class"); writer.WriteAttributeString("name", klass.name); writer.WriteAttributeString("fullname", klass.FullName.Replace('/', '.')); } WriteCoverage(item); if (item.ChildCount > 0) { foreach (CoverageItem child in item.children) { WriteItem(child, stopLevel, level - 1); } } writer.WriteEndElement(); }