From faf6240b454c51b4dc6c20824e93ae5c3818c9dd Mon Sep 17 00:00:00 2001 From: 0xboobface <0xboobface@gmail.com> Date: Sun, 25 Nov 2018 21:23:37 +0100 Subject: [PATCH] Save changes to the list of recorded models immediately ... to make sure, that the settings are persisted in case the process dies or gets killed. --- common/src/main/java/ctbrec/recorder/LocalRecorder.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/common/src/main/java/ctbrec/recorder/LocalRecorder.java b/common/src/main/java/ctbrec/recorder/LocalRecorder.java index 5587d7ab..3afb3ee4 100644 --- a/common/src/main/java/ctbrec/recorder/LocalRecorder.java +++ b/common/src/main/java/ctbrec/recorder/LocalRecorder.java @@ -98,6 +98,9 @@ public class LocalRecorder implements Recorder { try { models.add(model); config.getSettings().models.add(model); + config.save(); + } catch (IOException e) { + LOG.error("Couldn't save config", e); } finally { lock.unlock(); } @@ -115,6 +118,7 @@ public class LocalRecorder implements Recorder { stopRecordingProcess(model); } LOG.info("Model {} removed", model); + config.save(); } else { throw new NoSuchElementException("Model " + model.getName() + " ["+model.getUrl()+"] not found in list of recorded models"); } @@ -689,6 +693,7 @@ public class LocalRecorder implements Recorder { stopRecordingProcess(model); } tryRestartRecording(model); + config.save(); } @Override @@ -699,10 +704,13 @@ public class LocalRecorder implements Recorder { int index = models.indexOf(model); models.get(index).setSuspended(true); model.setSuspended(true); + config.save(); } else { LOG.warn("Couldn't suspend model {}. Not found in list", model.getName()); return; } + } catch (IOException e) { + LOG.error("Couldn't save config", e); } finally { lock.unlock(); } @@ -723,6 +731,7 @@ public class LocalRecorder implements Recorder { m.setSuspended(false); startRecordingProcess(m); model.setSuspended(false); + config.save(); } else { LOG.warn("Couldn't resume model {}. Not found in list", model.getName()); return;