package ${package}.services;
import org.apache.tapestry5.ioc.annotations.Inject;
import org.springframework.security.userdetails.UserDetails;
import org.springframework.security.userdetails.UserDetailsService;
import org.springframework.security.userdetails.UsernameNotFoundException;
import ${package}.domain.User;
public class UserDetailsServiceImpl implements UserDetailsService {
@Inject
private final UserService userService;
public UserDetailsServiceImpl(UserService userService) {
this.userService = userService;
}
@Override
public UserDetails loadUserByUsername(String username) {
User user = userService.getByUsername(username);
if (user != null) {
return new UserDetailsImpl(user.getUsername(), user.getPassword(), user.getProfile().getAuthorities());
}
throw new UsernameNotFoundException("User " + username + " not found");
}
}