package com.gtp.security;
//import com.innova.ums.dao.UserDao;
//import com.innova.ums.domain.Authory;
//import com.innova.ums.domain.Role;
//import com.innova.ums.domain.User;
//import com.innova.ums.domain.UserSecurityInformation;
import org.springframework.dao.DataAccessException;
import org.springframework.security.core.GrantedAuthority;
import org.springframework.security.core.authority.GrantedAuthorityImpl;
import org.springframework.security.core.userdetails.UserDetails;
import org.springframework.security.core.userdetails.UserDetailsService;
import org.springframework.security.core.userdetails.UsernameNotFoundException;
import com.gtp.dao.UserDao;
import com.gtp.domain.Authority;
import com.gtp.domain.User;
import java.util.ArrayList;
import java.util.Set;
public class MyUserDetailsService implements UserDetailsService {
public MyUserDetailsService() {
// TODO Auto-generated constructor stub
}
private UserDao userDao;
public UserDetails loadUserByUsername(String eposta)
throws UsernameNotFoundException, DataAccessException {
User user = userDao.findByEmailName(eposta);
if (user != null) {
String password = user.getPassword();
ArrayList<GrantedAuthority> ga = new ArrayList<GrantedAuthority>();
Set<Authority> userAuthorities = user.getAuthorities();
for (Authority authority : userAuthorities) {
ga.add(new GrantedAuthorityImpl(authority.getName()));
}
GrantedAuthority[] grantedAuthorities = new GrantedAuthority[ga
.size()];
ga.toArray(grantedAuthorities);
MyUserDetails myUserDetails = new MyUserDetails(eposta, password,
true, true, true, true, grantedAuthorities);
return myUserDetails;
} else {
throw new UsernameNotFoundException(eposta);
}
}
public UserDao getUserDao() {
return userDao;
}
public void setUserDao(UserDao userDao) {
this.userDao = userDao;
}
}