KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > jmanage > webui > actions > auth > AddUserAction


1 /**
2  * Copyright 2004-2005 jManage.org
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */

16 package org.jmanage.webui.actions.auth;
17
18 import org.jmanage.webui.actions.BaseAction;
19 import org.jmanage.webui.util.WebContext;
20 import org.jmanage.webui.util.Forwards;
21 import org.jmanage.webui.forms.UserForm;
22 import org.jmanage.core.auth.UserManager;
23 import org.jmanage.core.auth.User;
24 import org.jmanage.core.auth.Role;
25 import org.jmanage.core.services.AccessController;
26 import org.jmanage.core.crypto.Crypto;
27 import org.jmanage.core.util.UserActivityLogger;
28 import org.apache.struts.action.ActionForward;
29 import org.apache.struts.action.ActionMapping;
30 import org.apache.struts.action.ActionForm;
31
32 import javax.servlet.http.HttpServletRequest JavaDoc;
33 import javax.servlet.http.HttpServletResponse JavaDoc;
34 import java.util.List JavaDoc;
35 import java.util.ArrayList JavaDoc;
36
37 /**
38  * Date : Jul 28, 2004 1:45:27 AM
39  * @author Shashank
40  */

41 public class AddUserAction extends BaseAction{
42
43     /**
44      * Add new user to the list.
45      *
46      * @param context
47      * @param mapping
48      * @param actionForm
49      * @param request
50      * @param response
51      * @return
52      * @throws Exception
53      */

54     public ActionForward execute(WebContext context,
55                                  ActionMapping mapping,
56                                  ActionForm actionForm,
57                                  HttpServletRequest JavaDoc request,
58                                  HttpServletResponse JavaDoc response)
59             throws Exception JavaDoc {
60         AccessController.checkAccess(context.getServiceContext(), ACL_ADD_USERS);
61         User user = buildUser(actionForm);
62         UserManager.getInstance().addUser(user);
63         UserActivityLogger.getInstance().logActivity(
64                 context.getUser().getUsername(), "Added user "+user.getName());
65         return mapping.findForward(Forwards.SUCCESS);
66     }
67
68     /**
69      * Build User object from Action form.
70      *
71      * @param form
72      * @return
73      */

74     private User buildUser(ActionForm form){
75         UserForm userForm = (UserForm)form;
76         List JavaDoc roles = new ArrayList JavaDoc(1);
77         roles.add(new Role(userForm.getRole()));
78         User user = new User(userForm.getUsername(), Crypto.hash(userForm.getPassword()),
79                 roles, userForm.getStatus(), 0);
80         return user;
81     }
82 }
83
Popular Tags