Merge "Fixes application scenario examples"
diff --git a/examples/basyx.aasWrapper/.gitignore b/examples/basyx.aasWrapper/.gitignore
new file mode 100644
index 0000000..02eeb17
--- /dev/null
+++ b/examples/basyx.aasWrapper/.gitignore
@@ -0,0 +1,69 @@
+.classpath
+.project
+
+regressiontest/
+target/
+pom.xml.tag
+pom.xml.releaseBackup
+pom.xml.versionsBackup
+pom.xml.next
+release.properties
+dependency-reduced-pom.xml
+buildNumber.properties
+.mvn/timing.properties
+.mvn/wrapper/maven-wrapper.jar
+.metadata
+bin/
+tmp/
+*.tmp
+*.bak
+*.swp
+*~.nib
+local.properties
+.settings/
+.loadpath
+.recommenders
+
+# External tool builders
+.externalToolBuilders/
+
+# Locally stored "Eclipse launch configurations"
+*.launch
+
+# PyDev specific (Python IDE for Eclipse)
+*.pydevproject
+
+# CDT-specific (C/C++ Development Tooling)
+.cproject
+
+# CDT- autotools
+.autotools
+
+# Java annotation processor (APT)
+.factorypath
+
+# PDT-specific (PHP Development Tools)
+.buildpath
+
+# sbteclipse plugin
+.target
+
+# Tern plugin
+.tern-project
+
+# TeXlipse plugin
+.texlipse
+
+# STS (Spring Tool Suite)
+.springBeans
+
+# Code Recommenders
+.recommenders/
+
+# Annotation Processing
+.apt_generated/
+
+# Scala IDE specific (Scala & Java development for Eclipse)
+.cache-main
+.scala_dependencies
+.worksheet
\ No newline at end of file
diff --git a/examples/basyx.aasWrapper/docker-compose.yml b/examples/basyx.aasWrapper/docker-compose.yml
index 4240df8..fe990ac 100644
--- a/examples/basyx.aasWrapper/docker-compose.yml
+++ b/examples/basyx.aasWrapper/docker-compose.yml
@@ -2,13 +2,13 @@
 services:
 
   registry:
-    image: basyx/registry:0.1.0-SNAPSHOT
+    image: eclipsebasyx/aas-registry:1.0.1
     container_name: dashboard-registry
     ports:
       - 4000:4000
 
   dashboard-aas:
-    image: basyx/dashboard-aas:0.1.0-SNAPSHOT
+    image: eclipsebasyx/dashboard-aas:0.1.0-SNAPSHOT
     container_name: dashboard-aas
     environment:
       - BaSyxDashboardSubmodel_Min=15
@@ -17,7 +17,7 @@
       - 6400:6400
 
   aas-wrapper:
-    image: basyx/aas-wrapper:0.1.0-SNAPSHOT
+    image: eclipsebasyx/aas-wrapper:0.1.0-SNAPSHOT
     container_name: aas-wrapper
     ports:
       - 6500:6500
\ No newline at end of file
diff --git a/examples/basyx.dashboardAAS/.gitignore b/examples/basyx.dashboardAAS/.gitignore
new file mode 100644
index 0000000..02eeb17
--- /dev/null
+++ b/examples/basyx.dashboardAAS/.gitignore
@@ -0,0 +1,69 @@
+.classpath
+.project
+
+regressiontest/
+target/
+pom.xml.tag
+pom.xml.releaseBackup
+pom.xml.versionsBackup
+pom.xml.next
+release.properties
+dependency-reduced-pom.xml
+buildNumber.properties
+.mvn/timing.properties
+.mvn/wrapper/maven-wrapper.jar
+.metadata
+bin/
+tmp/
+*.tmp
+*.bak
+*.swp
+*~.nib
+local.properties
+.settings/
+.loadpath
+.recommenders
+
+# External tool builders
+.externalToolBuilders/
+
+# Locally stored "Eclipse launch configurations"
+*.launch
+
+# PyDev specific (Python IDE for Eclipse)
+*.pydevproject
+
+# CDT-specific (C/C++ Development Tooling)
+.cproject
+
+# CDT- autotools
+.autotools
+
+# Java annotation processor (APT)
+.factorypath
+
+# PDT-specific (PHP Development Tools)
+.buildpath
+
+# sbteclipse plugin
+.target
+
+# Tern plugin
+.tern-project
+
+# TeXlipse plugin
+.texlipse
+
+# STS (Spring Tool Suite)
+.springBeans
+
+# Code Recommenders
+.recommenders/
+
+# Annotation Processing
+.apt_generated/
+
+# Scala IDE specific (Scala & Java development for Eclipse)
+.cache-main
+.scala_dependencies
+.worksheet
\ No newline at end of file
diff --git a/examples/basyx.dashboardAAS/docker-compose.yml b/examples/basyx.dashboardAAS/docker-compose.yml
index 316eb9c..a52f474 100644
--- a/examples/basyx.dashboardAAS/docker-compose.yml
+++ b/examples/basyx.dashboardAAS/docker-compose.yml
@@ -2,13 +2,13 @@
 services:
 
   registry:
-    image: basyx/registry:0.1.0-SNAPSHOT
+    image: eclipsebasyx/aas-registry:1.0.1
     container_name: dashboard-registry
     ports:
       - 4000:4000
 
   dashboard-aas:
-    image: basyx/dashboard-aas:0.1.0-SNAPSHOT
+    image: eclipsebasyx/dashboard-aas:0.1.0-SNAPSHOT
     container_name: dashboard-aas
     environment:
       - BaSyxDashboardSubmodel_Min=15
diff --git a/examples/basyx.grafana/docker-compose.yml b/examples/basyx.grafana/docker-compose.yml
index a6a0f87..81b38ac 100644
--- a/examples/basyx.grafana/docker-compose.yml
+++ b/examples/basyx.grafana/docker-compose.yml
@@ -2,13 +2,13 @@
 services:
 
   registry:
-    image: basyx/registry:0.1.0-SNAPSHOT
+    image: eclipsebasyx/aas-registry:1.0.1
     container_name: dashboard-registry
     ports:
       - 4000:4000
 
   dashboard-aas:
-    image: basyx/dashboard-aas:0.1.0-SNAPSHOT
+    image: eclipsebasyx/dashboard-aas:0.1.0-SNAPSHOT
     container_name: dashboard-aas
     environment:
       - BaSyxDashboardSubmodel_Min=15
@@ -17,7 +17,7 @@
       - 6400:6400
 
   aas-wrapper:
-    image: basyx/aas-wrapper:0.1.0-SNAPSHOT
+    image: eclipsebasyx/aas-wrapper:0.1.0-SNAPSHOT
     container_name: aas-wrapper
     ports:
       - 6500:6500
diff --git a/examples/basyx.grafana/lib/grafana.db b/examples/basyx.grafana/lib/grafana.db
index 9304575..3677257 100644
--- a/examples/basyx.grafana/lib/grafana.db
+++ b/examples/basyx.grafana/lib/grafana.db
Binary files differ
diff --git a/examples/basyx.nodered/.gitignore b/examples/basyx.nodered/.gitignore
index a52c20a..c5294d7 100644
--- a/examples/basyx.nodered/.gitignore
+++ b/examples/basyx.nodered/.gitignore
@@ -1 +1,3 @@
-/mosquitto/mosquitto.log
\ No newline at end of file
+/mosquitto/log/mosquitto.log
+/node-red/.flows.json.backup
+/node-red/.flows_cred.json.backup
\ No newline at end of file
diff --git a/examples/basyx.nodered/docker-compose.yml b/examples/basyx.nodered/docker-compose.yml
index eade085..abf88fc 100644
--- a/examples/basyx.nodered/docker-compose.yml
+++ b/examples/basyx.nodered/docker-compose.yml
@@ -2,13 +2,13 @@
 services:
 
   registry:
-    image: basyx/registry:0.1.0-SNAPSHOT
+    image: eclipsebasyx/aas-registry:1.0.1
     container_name: dashboard-registry
     ports:
       - 4000:4000
 
   dashboard-aas:
-    image: basyx/dashboard-aas:0.1.0-SNAPSHOT
+    image: eclipsebasyx/dashboard-aas:0.1.0-SNAPSHOT
     container_name: dashboard-aas
     environment:
       - BaSyxDashboardSubmodel_Min=15
@@ -17,13 +17,13 @@
       - 6400:6400
 
   aas-wrapper:
-    image: basyx/aas-wrapper:0.1.0-SNAPSHOT
+    image: eclipsebasyx/aas-wrapper:0.1.0-SNAPSHOT
     container_name: aas-wrapper
     ports:
       - 6500:6500
 
   node-red:
-    image: basyx/node-red:0.1.0
+    image: eclipsebasyx/examples-dataflow-nodered:0.1.0-SNAPSHOT
     container_name: node-red
     ports:
       - 1880:1880
diff --git a/examples/basyx.nodered/node-red/flows.json b/examples/basyx.nodered/node-red/flows.json
index 0e22486..b4063b1 100644
--- a/examples/basyx.nodered/node-red/flows.json
+++ b/examples/basyx.nodered/node-red/flows.json
@@ -1 +1 @@
-[{"id":"ac89e902.a48598","type":"tab","label":"AAS Temperature","disabled":false,"info":""},{"id":"91383a96.5b2e48","type":"tab","label":"Test","disabled":false,"info":""},{"id":"1b4daff8.52358","type":"mqtt-broker","z":"","name":"Streamsheets Mosquitto","broker":"http://streamsheets","port":"1883","clientid":"","usetls":false,"compatmode":false,"keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthPayload":"","closeTopic":"","closeQos":"0","closePayload":"","willTopic":"","willQos":"0","willPayload":""},{"id":"2289cf21.0a21b","type":"inject","z":"ac89e902.a48598","name":"Start","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":110,"y":120,"wires":[["c3659321.46995"]]},{"id":"c3659321.46995","type":"get-aas-property","z":"ac89e902.a48598","name":"Get Temperature","property":"temp","period":1,"x":270,"y":120,"wires":[["a56bd8e1.1777c8","2c13d59c.208cea","8c41e115.ac913"]]},{"id":"4e72f0db.c2a7a","type":"inject","z":"91383a96.5b2e48","name":"Data","props":[{"p":"values","v":"[22.344,23.434,24.342,21.098]","vt":"json"},{"p":"timestamp","v":"[121323,2112231,321331,321321]","vt":"json"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","x":140,"y":100,"wires":[["a53d7930.6109f8","4a734a5f.b22314","ab2d648a.1767f8"]]},{"id":"a53d7930.6109f8","type":"debug","z":"91383a96.5b2e48","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":250,"y":240,"wires":[]},{"id":"4a734a5f.b22314","type":"function","z":"91383a96.5b2e48","name":"Calculate Average","func":"msg.avg = msg.values.reduce((a,b) => a + b, 0) / msg.values.length;\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":450,"y":120,"wires":[["6b28c27b.5547bc"]]},{"id":"6b28c27b.5547bc","type":"debug","z":"91383a96.5b2e48","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":710,"y":120,"wires":[]},{"id":"ab2d648a.1767f8","type":"function","z":"91383a96.5b2e48","name":"Calculate Fahrenheit","func":"msg.fahrenheit = msg.values.map(v => v * 1.8 + 32);\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":460,"y":180,"wires":[["5e614070.a223f"]]},{"id":"5e614070.a223f","type":"debug","z":"91383a96.5b2e48","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":710,"y":180,"wires":[]},{"id":"e733d05.63a9c3","type":"iot-datasource","z":"ac89e902.a48598","name":"Temperature Datasource","tstampField":"tstamp","dataField":"data","disableDiscover":false,"x":730,"y":240,"wires":[[]]},{"id":"8e627da8.65b74","type":"mqtt out","z":"ac89e902.a48598","name":"MQTT Avg Temp Publisher","topic":"temperature/average","qos":"","retain":"","broker":"1b4daff8.52358","x":740,"y":120,"wires":[]},{"id":"7aa9e937.6575c8","type":"mqtt in","z":"ac89e902.a48598","name":"MQTT Avg Temp Consumer","topic":"temperature/average","qos":"2","datatype":"json","broker":"1b4daff8.52358","x":160,"y":360,"wires":[["f96c72b.3be659"]]},{"id":"f96c72b.3be659","type":"debug","z":"ac89e902.a48598","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload.average","targetType":"msg","statusVal":"","statusType":"auto","x":420,"y":360,"wires":[]},{"id":"a56bd8e1.1777c8","type":"function","z":"ac89e902.a48598","name":"Calculate Average","func":"const payload = msg.payload;\nlet average = payload.data.reduce((a,b) => a + b, 0) / payload.data.length;\npayload.average = average;\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":490,"y":120,"wires":[["8e627da8.65b74"]]},{"id":"2c13d59c.208cea","type":"function","z":"ac89e902.a48598","name":"Calculate Fahrenheit","func":"const payload = msg.payload;\nlet fahrenheit = payload.data.map(v => v * 1.8 + 32);\npayload.fahrenheit = fahrenheit;\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":500,"y":180,"wires":[["a3733cf8.97468"]]},{"id":"a3733cf8.97468","type":"mqtt out","z":"ac89e902.a48598","name":"MQTT Fahrenheit Temp Publisher","topic":"temperature/fahrenheit","qos":"","retain":"","broker":"1b4daff8.52358","x":760,"y":180,"wires":[]},{"id":"8c41e115.ac913","type":"function","z":"ac89e902.a48598","name":"Get most recent","func":"msg.payload.tstamp = new Date(msg.payload.tstamp.pop()).getTime();\nmsg.payload.data = msg.payload.data.pop();\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":480,"y":240,"wires":[["e733d05.63a9c3"]]}]
\ No newline at end of file
+[{"id":"ac89e902.a48598","type":"tab","label":"AAS Temperature","disabled":false,"info":""},{"id":"91383a96.5b2e48","type":"tab","label":"Test","disabled":false,"info":""},{"id":"1b4daff8.52358","type":"mqtt-broker","z":"","name":"Mosquitto","broker":"http://mosquitto","port":"1883","clientid":"","usetls":false,"compatmode":false,"keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthPayload":"","closeTopic":"","closeQos":"0","closePayload":"","willTopic":"","willQos":"0","willPayload":""},{"id":"2289cf21.0a21b","type":"inject","z":"ac89e902.a48598","name":"Start","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":110,"y":120,"wires":[["c3659321.46995"]]},{"id":"c3659321.46995","type":"get-aas-property","z":"ac89e902.a48598","name":"Get Temperature","property":"temp","period":1,"x":270,"y":120,"wires":[["a56bd8e1.1777c8","2c13d59c.208cea","8c41e115.ac913"]]},{"id":"4e72f0db.c2a7a","type":"inject","z":"91383a96.5b2e48","name":"Data","props":[{"p":"values","v":"[22.344,23.434,24.342,21.098]","vt":"json"},{"p":"timestamp","v":"[121323,2112231,321331,321321]","vt":"json"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","x":140,"y":100,"wires":[["a53d7930.6109f8","4a734a5f.b22314","ab2d648a.1767f8"]]},{"id":"a53d7930.6109f8","type":"debug","z":"91383a96.5b2e48","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":250,"y":240,"wires":[]},{"id":"4a734a5f.b22314","type":"function","z":"91383a96.5b2e48","name":"Calculate Average","func":"msg.avg = msg.values.reduce((a,b) => a + b, 0) / msg.values.length;\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":450,"y":120,"wires":[["6b28c27b.5547bc"]]},{"id":"6b28c27b.5547bc","type":"debug","z":"91383a96.5b2e48","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":710,"y":120,"wires":[]},{"id":"ab2d648a.1767f8","type":"function","z":"91383a96.5b2e48","name":"Calculate Fahrenheit","func":"msg.fahrenheit = msg.values.map(v => v * 1.8 + 32);\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":460,"y":180,"wires":[["5e614070.a223f"]]},{"id":"5e614070.a223f","type":"debug","z":"91383a96.5b2e48","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":710,"y":180,"wires":[]},{"id":"e733d05.63a9c3","type":"iot-datasource","z":"ac89e902.a48598","name":"Temperature Datasource","tstampField":"tstamp","dataField":"data","disableDiscover":false,"x":730,"y":240,"wires":[[]]},{"id":"8e627da8.65b74","type":"mqtt out","z":"ac89e902.a48598","name":"MQTT Avg Temp Publisher","topic":"temperature/average","qos":"","retain":"","broker":"1b4daff8.52358","x":740,"y":120,"wires":[]},{"id":"7aa9e937.6575c8","type":"mqtt in","z":"ac89e902.a48598","name":"MQTT Avg Temp Consumer","topic":"temperature/average","qos":"2","datatype":"json","broker":"1b4daff8.52358","x":160,"y":360,"wires":[["f96c72b.3be659"]]},{"id":"f96c72b.3be659","type":"debug","z":"ac89e902.a48598","name":"Msg","active":true,"tosidebar":true,"console":true,"tostatus":true,"complete":"payload.average","targetType":"msg","statusVal":"payload.average","statusType":"auto","x":390,"y":360,"wires":[]},{"id":"a56bd8e1.1777c8","type":"function","z":"ac89e902.a48598","name":"Calculate Average","func":"const payload = msg.payload;\nlet average = payload.data.reduce((a,b) => a + b, 0) / payload.data.length;\npayload.average = average;\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":490,"y":120,"wires":[["8e627da8.65b74"]]},{"id":"2c13d59c.208cea","type":"function","z":"ac89e902.a48598","name":"Calculate Fahrenheit","func":"const payload = msg.payload;\nlet fahrenheit = payload.data.map(v => v * 1.8 + 32);\npayload.fahrenheit = fahrenheit;\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":500,"y":180,"wires":[["a3733cf8.97468"]]},{"id":"a3733cf8.97468","type":"mqtt out","z":"ac89e902.a48598","name":"MQTT Fahrenheit Temp Publisher","topic":"temperature/fahrenheit","qos":"","retain":"","broker":"1b4daff8.52358","x":760,"y":180,"wires":[]},{"id":"8c41e115.ac913","type":"function","z":"ac89e902.a48598","name":"Get most recent","func":"msg.payload.tstamp = new Date(msg.payload.tstamp.pop()).getTime();\nmsg.payload.data = msg.payload.data.pop();\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":480,"y":240,"wires":[["e733d05.63a9c3"]]}]
\ No newline at end of file
diff --git a/examples/basyx.nodered/node-red/flows_cred.json b/examples/basyx.nodered/node-red/flows_cred.json
index 4c13969..a4c98fe 100644
--- a/examples/basyx.nodered/node-red/flows_cred.json
+++ b/examples/basyx.nodered/node-red/flows_cred.json
@@ -1 +1 @@
-{"$":"39276bec4323f4ed09a2dd89a418c8dbzuTmQVz1IqyWc+XsMg2dPUwV6wsK1UkHOK9rPFDgSV45EMgO7pc7LYzFXg=="}
\ No newline at end of file
+{"$":"c868da21da8ba53a0c91801df18843d0H2SPE/Z3kkH48hmjwFw92jPiFRST"}
\ No newline at end of file
diff --git a/examples/basyx.streamsheets/docker-compose.yml b/examples/basyx.streamsheets/docker-compose.yml
index 77d723d..c4903f4 100644
--- a/examples/basyx.streamsheets/docker-compose.yml
+++ b/examples/basyx.streamsheets/docker-compose.yml
@@ -2,13 +2,13 @@
 services:
 
   registry:
-    image: basyx/registry:0.1.0-SNAPSHOT
+    image: eclipsebasyx/aas-registry:1.0.1
     container_name: dashboard-registry
     ports:
       - 4000:4000
 
   dashboard-aas:
-    image: basyx/dashboard-aas:0.1.0-SNAPSHOT
+    image: eclipsebasyx/dashboard-aas:0.1.0-SNAPSHOT
     container_name: dashboard-aas
     environment:
       - BaSyxDashboardSubmodel_Min=15
@@ -17,7 +17,7 @@
       - 6400:6400
 
   aas-wrapper:
-    image: basyx/aas-wrapper:0.1.0-SNAPSHOT
+    image: eclipsebasyx/aas-wrapper:0.1.0-SNAPSHOT
     container_name: aas-wrapper
     ports:
       - 6500:6500