public void SetUp() { document = new XmlDocument(); document.Load("Topics.xml"); theStack = new TopicXmlStack(theRootDirectory); }
private void walkFolderNode(TopicXmlStack stack, XmlElement child) { var folder = child.Name; stack.PushFolder(folder); walkChildren(child, stack); stack.PopFolder(); }
private void walkTopicNode(TopicXmlStack stack, XmlElement child) { var request = stack.AddTopic(child); if (child.HasChildNodes) { stack.PushTopic(request); walkChildren(child, stack); stack.PopTopic(); } }
public TopicRequest Parse(string directory, XmlDocument document) { var element = document.DocumentElement; var stack = new TopicXmlStack(directory); var request = stack.AddTopic(element); stack.PushTopic(request); walkChildren(element, stack); return request; }
public TopicRequest Parse(string directory, XmlDocument document) { var element = document.DocumentElement; var stack = new TopicXmlStack(directory); var request = stack.AddTopic(element); stack.PushTopic(request); walkChildren(element, stack); return(request); }
// assume that topic has been pushed before you get here! private void walkChildren(XmlElement element, TopicXmlStack stack) { foreach (XmlNode node in element.ChildNodes) { var child = node as XmlElement; if (child == null) continue; if (child.Name == "Topic") { walkTopicNode(stack, child); } else { walkFolderNode(stack, child); } } }
// assume that topic has been pushed before you get here! private void walkChildren(XmlElement element, TopicXmlStack stack) { foreach (XmlNode node in element.ChildNodes) { var child = node as XmlElement; if (child == null) { continue; } if (child.Name == "Topic") { walkTopicNode(stack, child); } else { walkFolderNode(stack, child); } } }