From 475808acd80e56423f2a710a3df24fd7240646e9 Mon Sep 17 00:00:00 2001 From: Nathan McRae Date: Sat, 8 Feb 2025 17:28:52 -0800 Subject: [PATCH] Move data directory when station is renamed --- .../numbersstation/StationSettingsController.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/main/java/name/nathanmcrae/numbersstation/StationSettingsController.java b/src/main/java/name/nathanmcrae/numbersstation/StationSettingsController.java index 00601d1..1c2f367 100644 --- a/src/main/java/name/nathanmcrae/numbersstation/StationSettingsController.java +++ b/src/main/java/name/nathanmcrae/numbersstation/StationSettingsController.java @@ -10,6 +10,8 @@ import com.tearsofaunicorn.wordpress.api.model.Post; import com.tearsofaunicorn.wordpress.api.WordpressClient; import java.io.File; import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Path; import java.time.format.DateTimeFormatter; import java.time.LocalDate; import java.time.LocalTime; @@ -417,6 +419,7 @@ public class StationSettingsController { } } + Path oldDirectory = settings.stationPath(); settings.setAddress(stationAddress.get()); settings.setDigitsPerGroup(digitsPerGroup.get()); settings.setExternalProgramCommand(externalProgramCommand.get()); @@ -431,6 +434,14 @@ public class StationSettingsController { settings.setScheduleStartDate(scheduleStartDatePicker.getValue()); settings.setUsername(username.get()); + try { + if (!oldDirectory.toString().equals(settings.stationPath().toString())) { + Files.move(oldDirectory, settings.stationPath()); + } + } catch (IOException ex) { + logger.log(Level.SEVERE, "Failed to move directory", ex); + } + try { DateTimeFormatter formatter = DateTimeFormatter.ofPattern("HH:mm:ss"); LocalTime startTime = LocalTime.parse(scheduleStartTimeField.getText(), formatter);