diff --git a/ragconnect.base/src/main/resources/receiveDefinition.mustache b/ragconnect.base/src/main/resources/receiveDefinition.mustache
index 4f2aafeaf7a872aced9fb6f723b89c89a5f7d691..96333bd3497e9468ab99ebae1aaf6e63951fc7f0 100644
--- a/ragconnect.base/src/main/resources/receiveDefinition.mustache
+++ b/ragconnect.base/src/main/resources/receiveDefinition.mustache
@@ -7,33 +7,32 @@ public boolean {{parentTypeName}}.{{connectMethod}}(String {{connectParameterNam
     {{/loggingEnabledForReads}}
     set{{tokenName}}({{lastResult}});
   };
+  ConnectToken connectToken;
   switch (scheme) {
   {{#usesMqtt}}
     case "mqtt":
-      ConnectToken connectToken = {{mqttHandlerAttribute}}().newConnection(uri, consumer);
+      connectToken = {{mqttHandlerAttribute}}().newConnection(uri, consumer);
       if (connectToken == null) {
         return false;
       }
-      connectTokens.computeIfAbsent(this, astNode -> new java.util.HashMap<java.net.URI, ConnectToken>())
-                   .put(uri, connectToken);
       break;
   {{/usesMqtt}}
   {{#usesRest}}
     case "rest":
-      ConnectToken connectToken = {{restHandlerAttribute}}().newPUTConnection(uri, input -> {
+      connectToken = {{restHandlerAttribute}}().newPUTConnection(uri, input -> {
         consumer.accept(input.getBytes());
       });
       if (connectToken == null) {
         return false;
       }
-      connectTokens.computeIfAbsent(this, astNode -> new java.util.HashMap<java.net.URI, ConnectToken>())
-                   .put(uri, connectToken);
       break;
   {{/usesRest}}
     default:
       System.err.println("Unknown protocol '" + scheme + "'.");
       return false;
   }
+  connectTokens.computeIfAbsent(this, astNode -> new java.util.HashMap<java.net.URI, ConnectToken>())
+               .put(uri, connectToken);
   return true;
 }