From 2a64ee72aa876ec1f1287c32d3ec6d3a95bf144b Mon Sep 17 00:00:00 2001 From: Lukas Weger Date: Sat, 2 Aug 2025 00:42:47 +0200 Subject: [PATCH] Refactor SongController and RadioStationService to enhance song management functionality --- .../backend/controller/SongController.java | 3 +-- .../backend/service/RadioStationService.java | 17 +++++++++++++++++ 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/backend/src/main/java/com/serena/backend/controller/SongController.java b/backend/src/main/java/com/serena/backend/controller/SongController.java index 782e6fe..1694a5c 100644 --- a/backend/src/main/java/com/serena/backend/controller/SongController.java +++ b/backend/src/main/java/com/serena/backend/controller/SongController.java @@ -3,7 +3,6 @@ package com.serena.backend.controller; import com.serena.backend.dto.ApiResponse; import com.serena.backend.dto.ConnectClientRequest; import com.serena.backend.dto.AddSongRequest; -import com.serena.backend.dto.AddSongToStationRequest; import com.serena.backend.service.RadioStationService; import com.serena.backend.service.JwtService; import org.springframework.beans.factory.annotation.Autowired; @@ -30,7 +29,7 @@ public class SongController { } boolean success = radioStationService.addSongToQueue(request.getRadioStationId(), request.getSong()); - + if (success) { return ResponseEntity.ok(new ApiResponse<>(true, "Song added to queue successfully", null)); } else { diff --git a/backend/src/main/java/com/serena/backend/service/RadioStationService.java b/backend/src/main/java/com/serena/backend/service/RadioStationService.java index 1c10e1b..9ab557b 100644 --- a/backend/src/main/java/com/serena/backend/service/RadioStationService.java +++ b/backend/src/main/java/com/serena/backend/service/RadioStationService.java @@ -115,4 +115,21 @@ public class RadioStationService { return new ArrayList<>(); } + public boolean addSongToQueue(String radioStationId, Song song) { + RadioStation station = radioStations.get(radioStationId); + if (station != null) { + station.addSongToQueue(song); + return true; + } + return false; + } + + public Optional getNextSong(String radioStationId) { + RadioStation station = radioStations.get(radioStationId); + if (station != null) { + return Optional.ofNullable(station.getNextSong()); + } + return Optional.empty(); + } + }