KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > contineo > actions > admin > group > DeleteGroupAction


1 /*
2  * DeleteGroupAction.java
3  *
4  * Created on 26. August 2003, 19:17
5  */

6
7 package org.contineo.actions.admin.group;
8
9 import javax.servlet.http.HttpServletRequest JavaDoc;
10 import javax.servlet.http.HttpServletResponse JavaDoc;
11 import javax.servlet.http.HttpSession JavaDoc;
12 import org.apache.log4j.Level;
13 import org.apache.log4j.Logger;
14 import org.apache.struts.action.Action;
15 import org.apache.struts.action.ActionError;
16 import org.apache.struts.action.ActionErrors;
17 import org.apache.struts.action.ActionForm;
18 import org.apache.struts.action.ActionForward;
19 import org.apache.struts.action.ActionMapping;
20 import org.apache.struts.action.ActionMessage;
21 import org.apache.struts.action.ActionMessages;
22 import org.contineo.admin.dao.GroupDAO;
23 import org.contineo.admin.dao.MenuDAO;
24 import org.contineo.core.LoggingManager;
25 import org.contineo.core.SessionManagement;
26 /**
27  *
28  * @author Michael Scholz
29  */

30 public class DeleteGroupAction extends Action{
31
32     /**
33      * @uml.property name="logger"
34      * @uml.associationEnd
35      */

36     private Logger logger;
37
38     
39     /** Creates a new instance of DeleteGroupAction */
40     public DeleteGroupAction() {
41         logger = LoggingManager.getLogger(this.getClass());
42     }
43
44     public ActionForward execute(ActionMapping mapping,
45                     ActionForm form, HttpServletRequest JavaDoc request,
46                     HttpServletResponse JavaDoc response) {
47         ActionForward actionForward = new ActionForward();
48         ActionErrors errors = new ActionErrors();
49         ActionMessages messages = new ActionMessages();
50         HttpSession JavaDoc session = request.getSession();
51         if (SessionManagement.isValid(session)) {
52             try {
53                 String JavaDoc username = (String JavaDoc)session.getAttribute("authuser");
54                 MenuDAO mdao = new MenuDAO();
55                 if (mdao.isReadEnable(12, username)) {
56                     String JavaDoc groupname = request.getParameter("groupname");
57                     
58                     // we do not allow to delete the initial "admin" group
59
if (groupname.equals("admin")) {
60                         errors.add(ActionErrors.GLOBAL_ERROR, new ActionError("errors.action.groupdeleted.admin"));
61                     } else {
62                         GroupDAO dao = new GroupDAO();
63                         boolean deleted = dao.delete(groupname);
64                         if (!deleted)
65                             errors.add(ActionErrors.GLOBAL_ERROR, new ActionError("errors.action.groupdeleted"));
66                         else
67                             messages.add(ActionMessages.GLOBAL_MESSAGE, new ActionMessage("msg.action.groupdeleted"));
68                     }
69                     actionForward = mapping.findForward("showgroup");
70                 } else
71                     actionForward = mapping.findForward("noaccess");
72             } catch (Exception JavaDoc e) {
73                 if (logger.isEnabledFor(Level.ERROR))
74                     logger.error(e.getMessage());
75                 errors.add(ActionErrors.GLOBAL_ERROR, new ActionError("errors.action.groupdeleted"));
76                 actionForward = mapping.findForward("error");
77             }
78             saveErrors(request, errors);
79             saveMessages(request, messages);
80         } else
81             actionForward = mapping.findForward("invalid");
82         return actionForward;
83     }
84 }
85
Popular Tags