protected void service()

in gui/servlet/embedded/src/main/java/org/apache/batchee/servlet/JBatchController.java [138:181]


    protected void service(final HttpServletRequest req, final HttpServletResponse resp) throws ServletException, IOException {
        resp.setContentType("text/html");
        resp.setCharacterEncoding("UTF-8");
        req.setAttribute("context", context);
        req.setAttribute("mapping", mapping);

        final String path = req.getPathInfo();
        if (path != null && path.startsWith(EXECUTIONS_MAPPING)) {
            final String name = URLDecoder.decode(path.substring(EXECUTIONS_MAPPING.length()), "UTF-8");
            final int start = extractInt(req, "start", -1);
            listExecutions(req, name, executionByPage, start);
        } else if (path != null && path.startsWith(STEP_EXECUTIONS_MAPPING)) {
            final int executionId = Integer.parseInt(path.substring(STEP_EXECUTIONS_MAPPING.length()));
            listStepExecutions(req, executionId);
        } else if (path != null && path.startsWith(VIEW_MAPPING)) {
            final String name = URLDecoder.decode(path.substring(VIEW_MAPPING.length()), "UTF-8");
            view(req, name);
        } else if (path != null && path.startsWith(START_MAPPING)) {
            if (readOnly) {
                reportReadOnly(req);
            } else {
                final String name = URLDecoder.decode(path.substring(START_MAPPING.length()), "UTF-8");
                start(req, name);
            }
        } else if (path != null && path.startsWith(DO_START_MAPPING)) {
            if (readOnly) {
                reportReadOnly(req);
            } else {
                String name = URLDecoder.decode(path.substring(DO_START_MAPPING.length()), "UTF-8");
                if (name.isEmpty()) {
                    name = req.getParameter(FORM_JOB_NAME);
                }

                doStart(req, name, readProperties(req));
            }
        } else if (path != null && path.startsWith(SIMPLEREST_MAPPING)) {
            simpleRestController.dispatch(req, resp, path.substring(SIMPLEREST_MAPPING.length()));
            return; // simple REST handles all the response itself
        } else {
            listJobs(req);
        }

        req.getRequestDispatcher("/internal/batchee/layout.jsp").forward(req, resp);
    }