From 86a01d37d927894f9ccd672504a05658286fa529 Mon Sep 17 00:00:00 2001
From: Hendrik Jungnitsch <hendrik.jungnitsch@gedoplan.de>
Date: Mi, 07 Sep 2022 15:10:19 +0200
Subject: [PATCH] exercise04

---
 src/main/java/de/gedoplan/seminar/jpa/exercise/rest/JunctionResource.java |   11 ++++++++++-
 1 files changed, 10 insertions(+), 1 deletions(-)

diff --git a/src/main/java/de/gedoplan/seminar/jpa/exercise/rest/JunctionResource.java b/src/main/java/de/gedoplan/seminar/jpa/exercise/rest/JunctionResource.java
index 7a4c2bf..7a8541b 100644
--- a/src/main/java/de/gedoplan/seminar/jpa/exercise/rest/JunctionResource.java
+++ b/src/main/java/de/gedoplan/seminar/jpa/exercise/rest/JunctionResource.java
@@ -6,6 +6,7 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.MediaType;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PathVariable;
 import org.springframework.web.bind.annotation.PostMapping;
@@ -16,7 +17,9 @@
 import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.server.ResponseStatusException;
 
+import de.gedoplan.seminar.jpa.exercise.domain.Highway;
 import de.gedoplan.seminar.jpa.exercise.domain.Junction;
+import de.gedoplan.seminar.jpa.exercise.repository.HighwayRepository;
 import de.gedoplan.seminar.jpa.exercise.repository.JunctionRepository;
 
 @RestController
@@ -30,6 +33,9 @@
 
   @Autowired
   JunctionRepository junctionRepository;
+  
+  @Autowired
+  HighwayRepository highwayRepository;
 
   /**
    * Exercise JPA_BASICS_02: Insert test data.
@@ -56,8 +62,11 @@
     return junction.orElseThrow(() -> new ResponseStatusException(HttpStatus.NOT_FOUND));
   }
   
+  @Transactional
   @PutMapping("/{junctionId}/assignToHighway/{highwayId}")
   public void assignToHighway(@PathVariable Integer junctionId, @PathVariable Integer highwayId) {
-	  
+	  Highway highwayRef = highwayRepository.getReferenceById(highwayId);
+	  Junction junction = junctionRepository.findById(junctionId).orElseThrow();
+	  junction.setHighway(highwayRef);
   }
 }

--
Gitblit v1.7.1