1 package org.snipsnap.user; 2 3 import org.snipsnap.snip.storage.UserStorage; 4 5 29 30 public class DefaultAuthenticationService implements AuthenticationService { 31 private UserStorage storage; 32 33 public DefaultAuthenticationService(UserStorage storage) { 34 this.storage = storage; 35 } 36 37 public User authenticate(String login, String passwd) { 38 return authenticate(login, passwd, !ENCRYPTED); 39 } 40 41 public User authenticate(String login, String passwd, boolean encrypted) { 42 User user = storage.storageLoad(login); 43 44 49 if (null != user && 51 (encrypted ? user.getPasswd().equals(passwd) : Digest.authenticate(passwd, user.getPasswd()))) { 52 user.lastLogin(); 53 storage.storageStore(user); 54 return user; 55 } else { 56 return null; 57 } 58 } 59 60 public boolean isAuthenticated(User user) { 61 return user != null && !(user.isGuest() || user.isNonUser()); 62 } 63 } 64 | Popular Tags |