From ce85b51af310a4c967bd1f124db1d9accb039047 Mon Sep 17 00:00:00 2001
From: Paul Reichmuth
Date: Thu, 18 Dec 2025 15:37:15 +0100
Subject: [PATCH] introduce duplicate checks for Racers in RacerService.java
---
.../services/RacerService.java | 19 +++++++++++++++----
1 file changed, 15 insertions(+), 4 deletions(-)
diff --git a/src/main/java/de/pnreichmuth/timekeep_backend/services/RacerService.java b/src/main/java/de/pnreichmuth/timekeep_backend/services/RacerService.java
index 47de49b..75cae77 100644
--- a/src/main/java/de/pnreichmuth/timekeep_backend/services/RacerService.java
+++ b/src/main/java/de/pnreichmuth/timekeep_backend/services/RacerService.java
@@ -3,13 +3,12 @@ package de.pnreichmuth.timekeep_backend.services;
import de.pnreichmuth.timekeep_backend.entities.Racer;
import de.pnreichmuth.timekeep_backend.exceptions.RacerExistsException;
import de.pnreichmuth.timekeep_backend.exceptions.RacerNotFoundException;
-import de.pnreichmuth.timekeep_backend.exceptions.TeamNotFoundException;
import de.pnreichmuth.timekeep_backend.repositories.RacerRepository;
-import de.pnreichmuth.timekeep_backend.repositories.TeamRepository;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
+import java.util.List;
import java.util.UUID;
@Service
@@ -18,8 +17,20 @@ import java.util.UUID;
public class RacerService {
private final RacerRepository racerRepository;
- public Racer createRacer(Racer racer){
- return racerRepository.save(racer);
+ private void checkRacerIsDuplicate(Racer racer){
+ List racers = racerRepository.findAll();
+ if(racers.isEmpty()){
+ return;
+ }
+ if (racers.stream()
+ .anyMatch(
+ dbRacer -> dbRacer.getFirstName().equals(
+ racer.getFirstName())
+ && dbRacer.getLastName().equals(racer.getLastName())
+ && !dbRacer.getRacerID().equals(racer.getRacerID())))
+ {
+ throw new RacerExistsException("A racer by this name already exists.", racer);
+ }
}
public Racer createRacer(String firstName, String lastName, boolean isFirstSemester){