1 /**
2 *
3 */
4 package ar.com.jiji.kaya.auth;
5
6 import ar.com.jiji.kaya.dao.UserDao;
7 import ar.com.jiji.kaya.model.User;
8 import ar.com.jiji.kaya.utils.ValidateUtils;
9
10 /**
11 * Realiza la autenticacion de usuarios usando un DAO.
12 *
13 * @author lparra
14 *
15 */
16 public class UserAuthenticatorDaoImpl implements UserAuthenticator {
17
18 private UserDao dao;
19
20 public UserAuthenticatorDaoImpl() {
21 }
22
23 public UserAuthenticatorDaoImpl(UserDao dao) {
24 this.dao = dao;
25 }
26
27 public User authenticate(String username, String password)
28 throws IllegalArgumentException {
29 ValidateUtils.argNotNull(dao, "dao");
30 ValidateUtils.argNotNull(username, "user name");
31 ValidateUtils.argNotNull(password, "password");
32
33 User usr = dao.findByCredentials(username, password);
34
35
36
37
38 if (usr != null) {
39 usr.getRoles().size();
40 usr.getEmail();
41 }
42 return usr;
43
44 }
45
46 public void setUserDao(UserDao dao) {
47 ValidateUtils.argNotNull(dao, "userDao");
48 this.dao = dao;
49 }
50
51 }