1
2
3
4
5
6 package org.repoweb.action;
7 import java.lang.reflect.InvocationTargetException;
8 import javax.servlet.http.HttpServletRequest;
9 import javax.servlet.http.HttpServletResponse;
10 import org.apache.struts.action.Action;
11 import org.apache.struts.action.ActionForm;
12 import org.apache.struts.action.ActionForward;
13 import org.apache.struts.action.ActionMapping;
14 import org.apache.struts.action.DynaActionForm;
15 import org.repoweb.model.BadConfigException;
16 import org.repoweb.model.Manager;
17 import org.repoweb.model.ManagerConfig;
18 /***
19 * To edit/update manager configuration.
20 */
21 public class ManagerConfigAction extends Action {
22 private static final String REPO_TYPE = "repositoryType";
23 private static final String REPO_LOCATION = "repositoryLocation";
24
25 public ActionForward execute(ActionMapping mapping, ActionForm objForm,
26 HttpServletRequest request, HttpServletResponse res)
27 throws IllegalAccessException, InvocationTargetException, BadConfigException {
28 DynaActionForm form = (DynaActionForm)objForm;
29
30 if ("editConfig".equals(mapping.getParameter())) {
31 form.set(REPO_TYPE, Manager.getConfig().getMainRepository().getType());
32 form.set(REPO_LOCATION, Manager.getConfig().getMainRepository().getLocation());
33 }
34 else {
35 ManagerConfig config = new ManagerConfig();
36 config.setMainRepository(new ManagerConfig.RepositoryConfig(
37 (String)form.get(REPO_TYPE),
38 (String)form.get(REPO_LOCATION)));
39 Manager.setConfig(config);
40 }
41
42 return mapping.findForward("success");
43 }
44 }