Bugfix V3.2: RunLockPort-JavaDoc korrigiert und Backup-Fehler bei aktivem Scheduler behoben

BUG 1: RunLockPort-JavaDoc dokumentierte den Scheduler-Tick faelschlicherweise als
nicht-blockierenden Pfad mit tryAcquire(). Da execute() intern acquire() aufruft,
wuerde tryAcquire() vor execute() einen Double-Lock erzeugen. JavaDoc korrigiert:
Scheduler-Tick nutzt denselben blockierenden acquire()-Pfad wie der manuelle Lauf.

BUG 2: GuiConfigurationPropertiesWriter.copyFile() faengt jetzt AccessDeniedException
separat ab und liefert den klaren Hinweis "Konfiguration kann nicht gespeichert
werden - Scheduler laeuft." statt einer generischen Fehlermeldung.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-05-07 12:14:43 +02:00
parent 4bc70dae75
commit 719cc50d16
2 changed files with 11 additions and 7 deletions
@@ -2,6 +2,7 @@ package de.gecheckt.pdf.umbenenner.bootstrap.adapter;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.nio.file.AccessDeniedException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.StandardCopyOption;
@@ -156,6 +157,9 @@ public final class GuiConfigurationPropertiesWriter implements GuiConfigurationF
private void copyFile(Path source, Path destination) {
try {
Files.copy(source, destination);
} catch (AccessDeniedException e) {
throw new GuiConfigurationWriteException(
"Konfiguration kann nicht gespeichert werden Scheduler läuft.", e);
} catch (IOException e) {
throw new GuiConfigurationWriteException(
"Sicherungskopie konnte nicht erstellt werden: " + destination, e);