package com.agendaestudantil.seguranca; import com.agendaestudantil.entidade.Estudante; import com.agendaestudantil.repositorio.EstudanteRepositorio; 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; @Service public class ServicoAutenticacaoUsuario implements UserDetailsService { private final EstudanteRepositorio estudanteRepositorio; public ServicoAutenticacaoUsuario(EstudanteRepositorio estudanteRepositorio) { this.estudanteRepositorio = estudanteRepositorio; } @Override public UserDetails loadUserByUsername(String estudanteId) throws UsernameNotFoundException { Estudante estudante = estudanteRepositorio.findById(estudanteId) .orElseThrow(() -> new UsernameNotFoundException("Estudante não encontrado")); return new DetalhesUsuarioPersonalizado(estudante); } }