From ffcb930be29cea9c20433578a5b27440eaec20fe Mon Sep 17 00:00:00 2001
From: SebastianEbert <sebastian.ebert@tu-dresden.de>
Date: Wed, 8 Sep 2021 15:30:24 +0200
Subject: [PATCH] integrated id changes and fixed default protocol

---
 ragconnect.base/build.gradle                     |  2 +-
 .../jastadd/ragconnect/compiler/Compiler.java    |  4 ++--
 .../src/main/resources/handler.mustache          | 16 ++++++++++------
 3 files changed, 13 insertions(+), 9 deletions(-)

diff --git a/ragconnect.base/build.gradle b/ragconnect.base/build.gradle
index 753814f..89864f2 100644
--- a/ragconnect.base/build.gradle
+++ b/ragconnect.base/build.gradle
@@ -30,7 +30,7 @@ dependencies {
     implementation group: 'com.github.spullara.mustache.java', name: 'compiler', version: "${mustache_java_version}"
     // https://mvnrepository.com/artifact/org.apache.commons/commons-lang3
     api group: 'org.apache.commons', name: 'commons-lang3', version: '3.0'
-    runtimeOnly group: 'org.jastadd', name: 'jastadd', version: '2.3.4'
+ //   runtimeOnly group: 'org.jastadd', name: 'jastadd', version: '2.3.4'
 //    runtimeOnly group: 'org.jastadd', name: 'jastadd', version: '2.3.5'
     runtimeOnly fileTree(include: ['jastadd2.jar'], dir: '../libs')
     api group: 'net.sf.beaver', name: 'beaver-rt', version: '0.9.11'
diff --git a/ragconnect.base/src/main/java/org/jastadd/ragconnect/compiler/Compiler.java b/ragconnect.base/src/main/java/org/jastadd/ragconnect/compiler/Compiler.java
index c16c626..6638c18 100644
--- a/ragconnect.base/src/main/java/org/jastadd/ragconnect/compiler/Compiler.java
+++ b/ragconnect.base/src/main/java/org/jastadd/ragconnect/compiler/Compiler.java
@@ -179,9 +179,9 @@ public class Compiler extends AbstractCompiler {
     optionProtocols = addOption(
         new ValueOption("protocols", "Protocols to enable")
         .acceptMultipleValues(true)
-        .addDefaultValue(OPTION_PROTOCOL_JAVA, "Enable Java")
+        .addAcceptedValue(OPTION_PROTOCOL_JAVA, "Enable Java")
         .addAcceptedValue(OPTION_PROTOCOL_REST, "Enable REST")
-        .addAcceptedValue(OPTION_PROTOCOL_MQTT, "Enable MQTT")
+        .addDefaultValue(OPTION_PROTOCOL_MQTT, "Enable MQTT")
     );
     optionPrintYaml = addOption(
         new BooleanOption("printYaml", "Print out YAML instead of generating files")
diff --git a/ragconnect.base/src/main/resources/handler.mustache b/ragconnect.base/src/main/resources/handler.mustache
index 896f6ac..c9c30cc 100644
--- a/ragconnect.base/src/main/resources/handler.mustache
+++ b/ragconnect.base/src/main/resources/handler.mustache
@@ -16,19 +16,23 @@ aspect RagConnectHandler {
     {{/Handlers}}
   }
   class ConnectToken {
-    //static java.util.concurrent.atomic.AtomicLong counter = new java.util.concurrent.atomic.AtomicLong(0);
-    final String id;
+    static java.util.concurrent.atomic.AtomicLong counter = new java.util.concurrent.atomic.AtomicLong(0);
+    final long id;
+    final String globalId;
     final java.net.URI uri;
-
+   
     public ConnectToken(java.net.URI uri) {
-      this.id = java.util.UUID.randomUUID().toString(); // counter.incrementAndGet();
+      this.id = counter.incrementAndGet();
+      this.globalId = java.util.UUID.randomUUID().toString();
       this.uri = uri;
     }
-
+    
     public ConnectToken(java.net.URI uri, String uuid) {
-        this.id = uuid; // counter.incrementAndGet();
+        this.id = counter.incrementAndGet();
         this.uri = uri;
+        this.globalId = uuid;
     }
+
   }
   static java.util.Map<ASTNode, java.util.Map<java.net.URI, ConnectToken>> ASTNode.connectTokens = new java.util.HashMap<>();
 }
-- 
GitLab