package com.izouma.nineth.security; import com.izouma.nineth.dto.UserDTO; import com.izouma.nineth.service.UserService; import lombok.AllArgsConstructor; 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; @AllArgsConstructor @Service("jwtUserDetailsService") public class JwtUserDetailsService implements UserDetailsService { private UserService userService; @Override public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { UserDTO user = userService.findByUsernameAndDelFalse(username); if (user == null) { throw new UsernameNotFoundException(String.format("No user found with username '%s'.", username)); } else { return JwtUserFactory.create(user); } } }