private ModelAndView saveRule(HttpServletRequest request,
HttpServletResponse response) throws Exception {
String surt = request.getParameter("surt");
Rule rule;
Long ruleId = Long.decode(request.getParameter("edit"));
if (ruleId == NEW_RULE) {
rule = new Rule();
} else {
rule = ruleDao.getRule(ruleId);
}
rule.setSurt(surt);
rule.setPolicy(request.getParameter("policy"));
rule.setWho(request.getParameter("who"));
rule.setCaptureStart(parseDate(request.getParameter("captureStart")));
rule.setCaptureEnd(parseDate(request.getParameter("captureEnd")));
rule.setRetrievalStart(parseDate(request.getParameter("retrievalStart")));
rule.setRetrievalEnd(parseDate(request.getParameter("retrievalEnd")));
rule.setSecondsSinceCapture(parseInteger(request.getParameter("secondsSinceCapture")));
rule.setPrivateComment(request.getParameter("privateComment"));
rule.setPublicComment(request.getParameter("publicComment"));
ruleDao.saveRule(rule);
return redirectToSurt(request, response, surt);
}