29 lines
1.2 KiB
Java
29 lines
1.2 KiB
Java
package pl.edu.amu.wmi.bookapi.security;
|
|
|
|
import org.springframework.security.core.userdetails.User;
|
|
import org.springframework.security.core.userdetails.UserDetails;
|
|
import org.springframework.security.core.userdetails.UserDetailsService;
|
|
import org.springframework.security.core.userdetails.UsernameNotFoundException;
|
|
import org.springframework.stereotype.Service;
|
|
import pl.edu.amu.wmi.bookapi.models.UserDocument;
|
|
import pl.edu.amu.wmi.bookapi.repositories.UserRepository;
|
|
|
|
import static java.util.Collections.emptyList;
|
|
|
|
@Service
|
|
public class UserDetailsSecurityServiceImpl implements UserDetailsService {
|
|
private UserRepository userRepository;
|
|
|
|
public UserDetailsSecurityServiceImpl(UserRepository userRepository) {
|
|
this.userRepository = userRepository;
|
|
}
|
|
|
|
@Override
|
|
public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
|
|
UserDocument applicationUser = userRepository.findByUsername(username);
|
|
if (applicationUser == null) {
|
|
throw new UsernameNotFoundException(username);
|
|
}
|
|
return new User(applicationUser.getUsername(), applicationUser.getPassword(), emptyList());
|
|
}
|
|
} |