KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > appfuse > service > impl > UserManagerImpl


1 package org.appfuse.service.impl;
2
3 import java.util.List JavaDoc;
4
5 import org.acegisecurity.userdetails.UsernameNotFoundException;
6 import org.appfuse.dao.UserDao;
7 import org.appfuse.model.User;
8 import org.appfuse.service.UserExistsException;
9 import org.appfuse.service.UserManager;
10 import org.springframework.dao.DataIntegrityViolationException;
11
12
13 /**
14  * Implementation of UserManager interface.</p>
15  *
16  * <p>
17  * <a HREF="UserManagerImpl.java.htm"><i>View Source</i></a>
18  * </p>
19  *
20  * @author <a HREF="mailto:matt@raibledesigns.com">Matt Raible</a>
21  */

22 public class UserManagerImpl extends BaseManager implements UserManager {
23     private UserDao dao;
24
25     /**
26      * Set the Dao for communication with the data layer.
27      * @param dao
28      */

29     public void setUserDao(UserDao dao) {
30         this.dao = dao;
31     }
32
33     /**
34      * @see org.appfuse.service.UserManager#getUser(java.lang.String)
35      */

36     public User getUser(String JavaDoc userId) {
37         return dao.getUser(new Long JavaDoc(userId));
38     }
39
40     /**
41      * @see org.appfuse.service.UserManager#getUsers(org.appfuse.model.User)
42      */

43     public List JavaDoc getUsers(User user) {
44         return dao.getUsers(user);
45     }
46
47     /**
48      * @see org.appfuse.service.UserManager#saveUser(org.appfuse.model.User)
49      */

50     public void saveUser(User user) throws UserExistsException {
51         // if new user, lowercase userId
52
if (user.getVersion() == null) {
53             user.setUsername(user.getUsername().toLowerCase());
54         }
55         try {
56             dao.saveUser(user);
57         } catch (DataIntegrityViolationException e) {
58             throw new UserExistsException("User '" + user.getUsername() + "' already exists!");
59         }
60     }
61
62     /**
63      * @see org.appfuse.service.UserManager#removeUser(java.lang.String)
64      */

65     public void removeUser(String JavaDoc userId) {
66         if (log.isDebugEnabled()) {
67             log.debug("removing user: " + userId);
68         }
69
70         dao.removeUser(new Long JavaDoc(userId));
71     }
72
73     public User getUserByUsername(String JavaDoc username) throws UsernameNotFoundException {
74         return (User) dao.loadUserByUsername(username);
75     }
76 }
77
Popular Tags