public override Response MakeResponse(Request request, RequestContext context) { List <WikiPage> allPages = new DepthFirstTraverser(context.RootPage).Traverse(); foreach (WikiPage p in allPages) { if (p.Uri == request.Uri) { return(new Response(p, "200")); } } return(new Response(new WikiPage("404 page"), "404")); }
public void setup() { this.root = new WikiPage("Root"); this.child1 = new WikiPage("Child1"); this.child2 = new WikiPage("Child2"); this.child3 = new WikiPage("Child3"); this.root.AddChild(this.child2); this.root.AddChild(this.child1); this.child1.AddChild(this.child3); this.traverser = new DepthFirstTraverser(this.root); }
public virtual Response MakeResponse(Request request, RequestContext context) { this.request = request; List <WikiPage> allPages = new DepthFirstTraverser(context.RootPage).Traverse(); List <WikiPage> matchingPages = new List <WikiPage>(); foreach (WikiPage p in allPages) { if (Traverse(p)) { matchingPages.Add(p); } } string result = "found term in pages:<ul>"; foreach (WikiPage found in matchingPages) { result += "<li>" + found.Title + "</li>"; } result += "</ul>"; WikiPage results_page = new WikiPage(Title(), result, new List <string>()); return(new Response(results_page)); }