Browse Source

Minor bugfixes

Yentl Van Tendeloo 7 years ago
parent
commit
6c3878120b
3 changed files with 21 additions and 7 deletions
  1. 2 2
      bootstrap/mini_modify.alc
  2. 11 2
      wrappers/classes/modelverse.xml
  3. 8 3
      wrappers/modelverse_SCCD.py

+ 2 - 2
bootstrap/mini_modify.alc

@@ -432,9 +432,9 @@ String function cmd_read_defined_attrs(model : Element, element_name : String):
 		while (0 < set_len(attr_keys)):
 			attr_key = set_pop(attr_keys)
 			if (value_eq(read_attribute(model, reverseKeyLookup(model["model"], dict_read_edge(model["model"][element_name], attr_key)), "optional"), True)):
-				result = string_join(result, attr_key) + " ?: " + cast_value(attr_list[attr_key]) + "\n"
+				result = string_join(result, attr_key) + " ?: " + cast_string(attr_list[attr_key]) + "\n"
 			else:
-				result = string_join(result, attr_key) + " : " + cast_value(attr_list[attr_key]) + "\n"
+				result = string_join(result, attr_key) + " : " + cast_string(attr_list[attr_key]) + "\n"
 		return result!
 	else:
 		return "Element not found: " + element_name!

+ 11 - 2
wrappers/classes/modelverse.xml

@@ -138,6 +138,9 @@
                             <parameter expr='urlencode({"op": "set_input", "data": json.dumps(value), "taskname": self.taskname})'/>
                             <parameter expr='None'/>
                         </raise>
+                        <script>
+                            #print("Request: " + str(value))
+                        </script>
                     </transition>
 
                     <transition event="request" cond="not isinstance(value, type([]))" target=".">
@@ -146,6 +149,9 @@
                             <parameter expr='urlencode({"op": "set_input", "value": json.dumps(value), "taskname": self.taskname})'/>
                             <parameter expr='None'/>
                         </raise>
+                        <script>
+                            #print("Request: " + str(value))
+                        </script>
                     </transition>
 
                     <transition event="request_raw" target=".">
@@ -1035,8 +1041,11 @@
                         <transition cond="self.expect_response_partial('Success: ', pop=False)" target="../../wait_for_action/history">
                             <script>
                                 response = self.responses.pop(0).split(": ", 1)[1].strip()
-                                values = {line.split(" : ", 1)[0]: line.split(" : ", 1)[1] for line in response.split("\n")}
-                                values = {key: json.loads(values[key].split(" = ", 1)[1]) for key in values}
+                                if "\n" in response:
+                                    values = {line.split(" : ", 1)[0]: line.split(" : ", 1)[1] for line in response.split("\n")}
+                                    values = {key: json.loads(values[key].split(" = ", 1)[1]) for key in values}
+                                else:
+                                    values = {}
                             </script>
                             <raise event="result">
                                 <parameter expr="values"/>

+ 8 - 3
wrappers/modelverse_SCCD.py

@@ -1,7 +1,7 @@
 """
 Generated by Statechart compiler by Glenn De Jonghe, Joeri Exelmans, Simon Van Mierlo, and Yentl Van Tendeloo (for the inspiration)
 
-Date:   Mon May 28 10:12:07 2018
+Date:   Mon May 28 17:39:21 2018
 
 Model author: Yentl Van Tendeloo
 Model name:   MvK Server
@@ -2433,6 +2433,7 @@ class Modelverse(RuntimeClassBase):
     def _initialized_http_mapper_init_0_exec(self, parameters):
         value = parameters[0]
         self.big_step.outputEventOM(Event("narrow_cast", None, [self, self.http_clients[0], Event("HTTP_input", None, [urlencode({"op": "set_input", "data": json.dumps(value), "taskname": self.taskname}), None])]))
+        #print("Request: " + str(value))
     
     def _initialized_http_mapper_init_0_guard(self, parameters):
         value = parameters[0]
@@ -2441,6 +2442,7 @@ class Modelverse(RuntimeClassBase):
     def _initialized_http_mapper_init_1_exec(self, parameters):
         value = parameters[0]
         self.big_step.outputEventOM(Event("narrow_cast", None, [self, self.http_clients[0], Event("HTTP_input", None, [urlencode({"op": "set_input", "value": json.dumps(value), "taskname": self.taskname}), None])]))
+        #print("Request: " + str(value))
     
     def _initialized_http_mapper_init_1_guard(self, parameters):
         value = parameters[0]
@@ -2881,8 +2883,11 @@ class Modelverse(RuntimeClassBase):
     
     def _initialized_behaviour_operations_read_attrs_0_exec(self, parameters):
         response = self.responses.pop(0).split(": ", 1)[1].strip()
-        values = {line.split(" : ", 1)[0]: line.split(" : ", 1)[1] for line in response.split("\n")}
-        values = {key: json.loads(values[key].split(" = ", 1)[1]) for key in values}
+        if "\n" in response:
+            values = {line.split(" : ", 1)[0]: line.split(" : ", 1)[1] for line in response.split("\n")}
+            values = {key: json.loads(values[key].split(" = ", 1)[1]) for key in values}
+        else:
+            values = {}
         self.raiseInternalEvent(Event("result", None, [values]))
     
     def _initialized_behaviour_operations_read_attrs_0_guard(self, parameters):