From 18597fcba6b9a474b7256c28e20e84427533d99e Mon Sep 17 00:00:00 2001
From: rschoene <rene.schoene@tu-dresden.de>
Date: Thu, 21 Jul 2022 09:41:55 +0200
Subject: [PATCH] check mqtt broker, not use dependency defs

---
 src/main/jastadd/MinimalModel.connect         |  8 +++---
 .../de/tudresden/inf/st/mrc/MinimalMain.java  | 28 +++++++++++++------
 2 files changed, 24 insertions(+), 12 deletions(-)

diff --git a/src/main/jastadd/MinimalModel.connect b/src/main/jastadd/MinimalModel.connect
index 8bc77eb..fe9b979 100644
--- a/src/main/jastadd/MinimalModel.connect
+++ b/src/main/jastadd/MinimalModel.connect
@@ -11,10 +11,10 @@ Transformation maps String s to String {:
   return s + "postfix";
 :}
 
-// dependency definitions
-A.OutputOnA canDependOn A.Input as dependencyA ;
-B.OutputOnB canDependOn A.Input as dependencyB ;
-C.OutputOnC canDependOn A.Input as dependencyC ;
+// dependency definitions not needed for incremental evaluation
+//A.OutputOnA canDependOn A.Input as dependencyA ;
+//B.OutputOnB canDependOn A.Input as dependencyB ;
+//C.OutputOnC canDependOn A.Input as dependencyC ;
 
 // --- relational case ---
 send SenderRoot.Alfa ;
diff --git a/src/main/java/de/tudresden/inf/st/mrc/MinimalMain.java b/src/main/java/de/tudresden/inf/st/mrc/MinimalMain.java
index e966c30..cba699b 100644
--- a/src/main/java/de/tudresden/inf/st/mrc/MinimalMain.java
+++ b/src/main/java/de/tudresden/inf/st/mrc/MinimalMain.java
@@ -52,8 +52,19 @@ public class MinimalMain {
 //  static MinimalReceiver receiver = null;
 
   public static void main(String[] args) throws Exception {
-    publisher = new MqttHandler("publisher").setHost("localhost");
-    publisher.waitUntilReady(2, SECONDS);
+    boolean brokerReady;
+    try {
+      publisher = new MqttHandler("publisher").setHost("localhost");
+      brokerReady = publisher.waitUntilReady(2, SECONDS);
+    } catch (IOException e) {
+      brokerReady = false;
+    }
+
+    if (!brokerReady) {
+      logger.fatal("MQTT broker on localhost not available. Exiting!");
+      return;
+    }
+
     publisher.publish("---", ("Start at " + Instant.now()).getBytes());
 
 //    mainIncremental();
@@ -74,12 +85,13 @@ public class MinimalMain {
     B b1 = normalA.getB(0);
     B b2 = normalA.getB(1);
 
-    // a.OutputOnA -> a.Input
-    normalA.addDependencyA(normalA);
-    // b1.OutputOnB -> a.Input
-    b1.addDependencyB(normalA);
-    // b2.OutputOnB -> a.Input
-    b2.addDependencyB(normalA);
+    // dependency definitions not needed for incremental evaluation
+//    // a.OutputOnA -> a.Input
+//    normalA.addDependencyA(normalA);
+//    // b1.OutputOnB -> a.Input
+//    b1.addDependencyB(normalA);
+//    // b2.OutputOnB -> a.Input
+//    b2.addDependencyB(normalA);
 
     normalA.connectInput(TOPIC_URI_FOR_INPUT);
     normalA.connectOutputOnA("mqtt://localhost/normalA/out", true);
-- 
GitLab