private ActionMessages processForm( User user, Server server, DynaActionForm f, HttpServletRequest request) { if (log.isDebugEnabled()) { log.debug("Processing form."); } // scheduleScriptRun takes a list of servers List servers = new ArrayList(); servers.add(server); ActionMessages msgs = new ActionMessages(); Boolean submitted = (Boolean) f.get("submitted"); String runBefore = (String) f.get("run_script"); String username = (String) f.get("username"); String group = (String) f.get("group"); Long timeout = (Long) f.get("timeout"); String script = (String) f.get("script"); String sessionSetLabel = (String) f.get("session_set_label"); String mode = (String) f.get("mode"); if (log.isDebugEnabled()) { log.debug("submitted [" + submitted + "]"); log.debug("runBefore [" + runBefore + "]"); log.debug("username [" + username + "]"); log.debug("group [" + group + "]"); log.debug("timeout [" + timeout + "]"); log.debug("script [" + script + "]"); log.debug("mode [" + mode + "]"); } // The earliest time to perform the action. Date earliest = getStrutsDelegate().readDatePicker(f, "date", DatePicker.YEAR_RANGE_POSITIVE); if (BEFORE.equals(runBefore)) { ScriptActionDetails sad = ActionManager.createScript(username, group, timeout, script); ScriptRunAction sra = ActionManager.scheduleScriptRun(user, servers, "", sad, earliest); List<Map<String, Long>> packs = getPackages(user, request, sessionSetLabel); int numPackages = packs.size(); PackageAction pa = schedulePackageAction(user, server, packs, mode, earliest); pa.setPrerequisite(sra); ActionManager.storeAction(pa); showMessages(msgs, pa, server, numPackages, mode); showRemoteCommandMsg(msgs, true, mode); } else { List<Map<String, Long>> packs = getPackages(user, request, sessionSetLabel); int numPackages = packs.size(); PackageAction pa = schedulePackageAction(user, server, packs, mode, earliest); ScriptActionDetails sad = ActionManager.createScript(username, group, timeout, script); ScriptRunAction sra = ActionManager.scheduleScriptRun(user, servers, "", sad, earliest); sra.setPrerequisite(pa); ActionManager.storeAction(sra); showMessages(msgs, sra, server, numPackages, mode); showRemoteCommandMsg(msgs, false, mode); } SessionSetHelper.obliterate(request, sessionSetLabel); return msgs; }