package com.google.sitebricks.debug; import com.google.common.collect.Lists; import com.google.inject.Inject; import com.google.inject.servlet.RequestScoped; import com.google.sitebricks.At; import com.google.sitebricks.http.Get; import com.google.sitebricks.routing.PageBook; import com.google.sitebricks.routing.PageBook.Page; import java.util.Collections; import java.util.List; /** * Page showing some stats about current sitebricks configuration. * * @author dhanji@gmail.com (Dhanji R. Prasanna) */ @At("/debug") @RequestScoped public class DebugPage { @Inject private PageBook pageBook; private List<Page> resources; private List<Page> pages; @Get void debug() { resources = Lists.newArrayList(); pages = Lists.newArrayList(); for (List<Page> pages : pageBook.getPageMap()) { for (Page page : pages) { if (page.isHeadless()) { resources.add(page); } else { this.pages.add(page); } } } // O(n log n) Collections.sort(resources); Collections.sort(pages); } public List<Page> getResources() { return resources; } public List<Page> getPages() { return pages; } }