From 772dd72a3a57fbf9f8a77ddc773469ec9c8b9a1d Mon Sep 17 00:00:00 2001 From: Johannes Mey <johannes.mey@tu-dresden.de> Date: Fri, 8 Feb 2019 09:58:19 +0100 Subject: [PATCH] new configuration change detection. --- .../st/mquat/eris/coupling/ERISConnector.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/jastadd-mquat-eris/src/main/java/de/tudresden/inf/st/mquat/eris/coupling/ERISConnector.java b/jastadd-mquat-eris/src/main/java/de/tudresden/inf/st/mquat/eris/coupling/ERISConnector.java index 0aff1e0..f3c4a6d 100644 --- a/jastadd-mquat-eris/src/main/java/de/tudresden/inf/st/mquat/eris/coupling/ERISConnector.java +++ b/jastadd-mquat-eris/src/main/java/de/tudresden/inf/st/mquat/eris/coupling/ERISConnector.java @@ -368,6 +368,22 @@ public class ERISConnector { } logger.debug(" -> config has changed for living partition {}: {}", livingPartition, configHasChanged); + // figure out if the config has changed by comparing the new and old config by access path and attributes + configHasChanged = false; + if (livingPartition.getConfigurations().size() != configsToUse.size()) { + configHasChanged = true; + } else { + outer: for (ERISLPConfiguration newConfig : configsToUse) { + for (ERISLPConfiguration oldConfig : livingPartition.getConfigurations()) { + if (oldConfig.getAccessPath() == newConfig.getAccessPath() && oldConfig.getAttributesAndKeys().containsAll(newConfig.getAttributesAndKeys())) { + continue outer; + } + } + configHasChanged = true; + break; + } + } + if (configHasChanged) { // write back changed config -- GitLab