瀏覽代碼

Updated service_set to allow a list of values

Yentl Van Tendeloo 8 年之前
父節點
當前提交
79632035d0
共有 2 個文件被更改,包括 9 次插入3 次删除
  1. 2 2
      scripts/HUTN_service.py
  2. 7 1
      wrappers/modelverse.py

+ 2 - 2
scripts/HUTN_service.py

@@ -56,11 +56,11 @@ def compile_service(port):
         if mode == "code":
             compiled = compile_AL(code)
             service_set(port, "OK")
-            [service_set(port, i) for i in compiled]
+            service_set(port, compiled)
         elif mode == "model":
             compiled = compile_model(code)
             service_set(port, "OK")
-            [service_set(port, i) for i in compiled]
+            service_set(port, compiled)
         else:
             raise Exception("No such mode: " + mode)
     except Exception as e:

+ 7 - 1
wrappers/modelverse.py

@@ -78,6 +78,12 @@ def _check_type(value):
     if not isinstance(value, (int, long, float, str, unicode, bool)):
         raise UnsupportedValue("%s : %s" % (value, str(type(value))))
 
+def _check_type_list(value):
+    if isinstance(value, list):
+        [_check_type(i) for i in value]
+    else:
+        _check_type(value)
+
 def _dict_to_list(python_dict):
     lst = []
     for k, v in python_dict.items():
@@ -923,7 +929,7 @@ def service_get(port):
 
 def service_set(port, value):
     """Set a value on a specified port."""
-    _check_type(value)
+    _check_type_list(value)
     _goto_mode(MODE_SERVICE)
 
     _input(value, port=port)