From df7c82baf975075045da5f6631e4c64d85c648c8 Mon Sep 17 00:00:00 2001
From: rschoene <rene.schoene@tu-dresden.de>
Date: Thu, 21 Jan 2021 19:48:34 +0100
Subject: [PATCH] Continue working on incremental dependencies.

---
 .../de/tudresden/inf/st/mrc/MinimalMain.java  | 48 +++++++++++++++----
 1 file changed, 38 insertions(+), 10 deletions(-)

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 dd729a1..7752232 100644
--- a/src/main/java/de/tudresden/inf/st/mrc/MinimalMain.java
+++ b/src/main/java/de/tudresden/inf/st/mrc/MinimalMain.java
@@ -49,6 +49,7 @@ public class MinimalMain {
   static MinimalReceiver receiver = null;
 
   public static void main(String[] args) throws Exception {
+    boolean success;
     publisher = new MqttHandler("publisher").setHost("localhost");
     publisher.waitUntilReady(2, SECONDS);
     publisher.publish("---", ("Start at " + Instant.now()).getBytes());
@@ -86,32 +87,59 @@ public class MinimalMain {
     describedWait(1, "Publish 2");
     publisher.publish(TOPIC_FOR_INPUT, "2".getBytes());
 
-//    aWithNoDependency.getC(0).getOutputOnC();
+    describedWait(1, "Publish 21");
+    publisher.publish(TOPIC_FOR_INPUT, "21".getBytes());
 
-    describedWait(2, "Disconnect normalA");
-    try {
-      boolean success = normalA.disconnectInput(TOPIC_URI_FOR_INPUT);
-      logger.info("disconnect success: " + success);
-    } catch (IOException e) {
-      e.printStackTrace();
-    }
+    describedWait(1, "Publish 22 and 23");
+    publisher.publish(TOPIC_FOR_INPUT, "22".getBytes());
+    publisher.publish(TOPIC_FOR_INPUT, "23".getBytes());
 
 //    aWithNoDependency.getC(0).getOutputOnC();
 
+    describedWait(2, "Disconnect normalA");
+    success = normalA.disconnectInput(TOPIC_URI_FOR_INPUT);
+    logger.info("disconnect success: {}", success);
+
     describedWait(2, "Publish 4");
 //    receiver.reset();
     publisher.publish(TOPIC_FOR_INPUT, "4".getBytes());
 
-//    aWithNoDependency.getC(0).getOutputOnC();
-
 //    describedWait(1, "Print latest attributes");
 //    logger.info("latest attributes = {}", receiver.latestAttributes);
 
+    describedWait(1, "Disconnect aNoDep");
+    success = aWithNoDependency.disconnectInput(TOPIC_URI_FOR_INPUT);
+    logger.info("disconnect success: {}", success);
+
+    describedWait(1, "Publish 6");
+    publisher.publish(TOPIC_FOR_INPUT, "6".getBytes());
+
+    describedWait(1, "Connect aNormal again");
+    success = normalA.connectInput(TOPIC_URI_FOR_INPUT);
+    logger.info("connect success: {}", success);
+
+    describedWait(1, "Publish 8");
+    publisher.publish(TOPIC_FOR_INPUT, "8".getBytes());
+
+    describedWait(1, "Publish 81");
+    publisher.publish(TOPIC_FOR_INPUT, "81".getBytes());
+
+    describedWait(1, "Connect aNoDep again");
+    success = aWithNoDependency.connectInput(TOPIC_URI_FOR_INPUT);
+    logger.info("connect success: {}", success);
+
+    describedWait(1, "Publish 10");
+    publisher.publish(TOPIC_FOR_INPUT, "10".getBytes());
+
+    describedWait(1, "Publish 101");
+    publisher.publish(TOPIC_FOR_INPUT, "101".getBytes());
+
 //    while (true) {}
 //    System.out.println("[Enter] to exit");
 //    Scanner scanner = new Scanner(System.in);
 //    scanner.nextLine();
 //    SECONDS.sleep(15);
+    describedWait(0, "End");
   }
 
   private static void describedWait(long seconds, String description) throws InterruptedException {
-- 
GitLab