code: protected Map<String,String> buildRoot(HttpServletRequest request,
        XMLOutputter doc) {
      final String path = request.getPathInfo() != null
        ? request.getPathInfo() : "/";
      final String exclude = request.getParameter("exclude") != null
        ? request.getParameter("exclude") : "\\..*\\.crc";
      final String filter = request.getParameter("filter") != null
        ? request.getParameter("filter") : ".*";
      final boolean recur = request.getParameter("recursive") != null
        && "yes".equals(request.getParameter("recursive"));
  
      Map<String, String> root = new HashMap<String, String>();
      root.put("path", path);
      root.put("recursive", recur ? "yes" : "no");
      root.put("filter", filter);
      root.put("exclude", exclude);
      root.put("time", df.get().format(new Date()));
      root.put("version", VersionInfo.getVersion());
      return root;
    }
docs: Build a map from the query string, setting values and defaults.