public boolean handle()

in hollow-diff-ui/src/main/java/com/netflix/hollow/history/ui/HollowHistoryUI.java [165:213]


    public boolean handle(String target, HttpServletRequest req, HttpServletResponse resp)
            throws IOException {
        String pageName = getTargetRootPath(target);

        if("diffrowdata".equals(pageName)) {
            diffViewOutputGenerator.uncollapseRow(req, resp);
            return true;
        } else if("collapsediffrow".equals(pageName)) {
            diffViewOutputGenerator.collapseRow(req, resp);
            return true;
        }

        resp.setContentType("text/html");

        if("resource".equals(pageName)) {
            if(serveResource(req, resp, getResourceName(target)))
                return true;
        } else if("".equals(pageName) || "overview".equals(pageName)) {
            if(req.getParameter("format") != null && req.getParameter("format").equals("json")) {
                overviewPage.sendJson(req, resp);
                return true;
            }
            overviewPage.render(req, getSession(req, resp), resp.getWriter());
        } else if("state".equals(pageName)) {
            if(req.getParameter("format") != null && req.getParameter("format").equals("json")) {
                statePage.sendJson(req, resp);
                return true;
            }
            statePage.render(req, getSession(req, resp), resp.getWriter());
            return true;
        } else if("statetype".equals(pageName)) {
            if(req.getParameter("format") != null && req.getParameter("format").equals("json")) {
                stateTypePage.sendJson(req, getSession(req, resp),  resp);
                return true;
            }
            stateTypePage.render(req, getSession(req, resp), resp.getWriter());
            return true;
        } else if("statetypeexpand".equals(pageName)) {
            stateTypeExpandPage.render(req, getSession(req, resp), resp.getWriter());
            return true;
        } else if("query".equals(pageName)) {
            queryPage.render(req, getSession(req, resp), resp.getWriter());
            return true;
        } else if("historicalObject".equals(pageName)) {
            objectDiffPage.render(req, getSession(req, resp), resp.getWriter());
            return true;
        }
        return false;
    }