Files
release-hive/src/main/java/wtf/beatrice/releasehive/services/UserServiceImpl.java
Beatrice Dellacà 17ba5b8b9d
All checks were successful
continuous-integration/drone/push Build is passing
RLH-21 - Fix Sonar
2024-11-11 16:29:59 +01:00

45 lines
1.4 KiB
Java

package wtf.beatrice.releasehive.services;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.core.userdetails.UsernameNotFoundException;
import org.springframework.stereotype.Service;
import wtf.beatrice.releasehive.models.User;
import wtf.beatrice.releasehive.repositories.UserRepository;
import java.util.List;
import java.util.UUID;
@Service
public class UserServiceImpl implements UserService
{
private final UserRepository userRepository;
public UserServiceImpl(@Autowired UserRepository userRepository) {
this.userRepository = userRepository;
}
@Override
public List<User> getAllUsers() {
return userRepository.findAll();
}
@Override
public User loadUserByUsername(String username) throws UsernameNotFoundException {
return userRepository.findByUsername(username).orElseThrow(() -> new UsernameNotFoundException(username));
}
@Override
public User loadUserByEmail(String email) throws UsernameNotFoundException {
return userRepository.findByEmail(email).orElseThrow(() -> new UsernameNotFoundException(email));
}
@Override
public boolean deleteUser(UUID id) {
userRepository.delete(userRepository
.findById(id)
.orElseThrow(() -> new UsernameNotFoundException("User not found")));
return true;
}
}