protected void parseCommand()

in src/main/java/org/apache/sling/tail/impl/LogTailerWebConsolePlugin.java [278:311]


    protected void parseCommand(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        String cmd = request.getParameter("command");
        if(cmd == null) {
            return;
        }

        if(cmd.equals("reset")) {
            deleteCookie(response, FILTER_COOKIE);
        }
        else if(cmd.startsWith("filter:")) {
            String queryStr = cmd.substring(7);
            if(queryStr.length()==0) {
                deleteCookie(response, FILTER_COOKIE);
            }
            else {
                persistCookie(response, FILTER_COOKIE, queryStr);
                log.info("Filtering on : " + queryStr);
            }
        }
        else if(cmd.startsWith("file:")) {
            if(!fileName.equals(cmd.substring(5))) {
                deleteCookie(response, FILTER_COOKIE);
                deleteCookie(response, POSITION_COOKIE);
                fileName = cmd.substring(5);
                errLog = new File(filePathMap.get(fileName));
                if(!errLog.exists()) {
                    throw new ServletException("File " + fileName + " doesn't exist");
                }
                if(!errLog.canRead()) {
                    throw new ServletException("Cannot read file " + fileName);
                }
            }
        }
    }