OpenApi.py update

Signed-off-by: Gabor Szalai <gabor.szalai@ericsson.com>
diff --git a/tools/OpenApi.py b/tools/OpenApi.py
index 10583a0..a3dfa48 100755
--- a/tools/OpenApi.py
+++ b/tools/OpenApi.py
@@ -356,7 +356,7 @@
           module_data['import'].append("JSON_Generic")
     else:
       element_data["type"]=data["type"]
-      print('!!!!!!unsupported' + data["type"])
+      #print('!!!!!!unsupported' + data["type"])
 
   elif "$ref" in data:
     refmodule,refstr=get_module(data["$ref"])
@@ -417,8 +417,8 @@
     element_data["type"]="JSON_Generic.JSON_generic_val"
     if not "JSON_Generic" in module_data['import']:
       module_data['import'].append("JSON_Generic")
-    print('!!!!!!unsupported ',name)  
-    pprint.pprint(data)
+    #print('!!!!!!unsupported ',name)  
+    #pprint.pprint(data)
   
   if "nullable" in data:
     if not "JSON_Generic" in module_data['import']:
@@ -455,8 +455,6 @@
       if "mandatory" in t:
         if f["name"] not in t["mandatory"]:
           print(" optional", end="")
-      if f["nullable"]:
-        print("/* nullable */", end="",sep="")
     ident_level-=1
     print("",sep="")
     print(ident_c*ident_level,"}",sep="",end=lend)
@@ -521,7 +519,19 @@
     schemas=doc["components"]["schemas"]
     for name in schemas:
       if (name[-2:] == "Rm" ) and (name[:-2] in schemas ):
-        type_tree.append({'name':clean_name(name,True),'type':clean_name(name[:-2],True)})
+        type_tree.append({'fields': [{'name': 'null_val',
+              'nullable': False,
+              'type': 'JSON_generic_val.JSON_null_val'},
+             {'name': 'val',
+              'nullable': False,
+              'type': clean_name(name[:-2],True),
+              'variant': []}],
+  'name': clean_name(name,True),
+  'nullable': True,
+  'type': 'union',
+  'variant': ['JSON: as value']})
+      elif name == "NullValue":
+        type_tree.append({'type': 'JSON_generic_val.JSON_null_val','name':'NullValue','nullable': True})
       else:
         data=schemas[name]
         type_builder(clean_name(name,True),data,type_tree)
@@ -585,4 +595,4 @@
 print('  encode "JSON"')
 print('}')
 
-pprint.pprint(type_tree)
+#pprint.pprint(type_tree)