Index: CodeGenerator.py |
diff --git a/CodeGenerator.py b/CodeGenerator.py |
index 2bf00276512ff58244336e8020c1f59ad6e1fbf1..dfcbbf6789db1839250f5c600a2443f836c42d5a 100644 |
--- a/CodeGenerator.py |
+++ b/CodeGenerator.py |
@@ -8,6 +8,7 @@ import optparse |
import collections |
import functools |
import re |
+import copy |
try: |
import json |
except ImportError: |
@@ -469,6 +470,20 @@ def main(): |
protocol.imported_domains = read_protocol_file(config.imported.path, protocol.json_api) if config.imported else [] |
patch_full_qualified_refs(protocol) |
calculate_imports_and_exports(config, protocol) |
+ |
+ for domain in protocol.json_api["domains"]: |
+ if "events" in domain: |
+ for event in domain["events"]: |
+ event_type = dict() |
+ event_type["description"] = "Wrapper for notification params" |
+ event_type["type"] = "object" |
+ event_type["id"] = to_title_case(event["name"]) + "Notification" |
+ if "parameters" in event: |
+ event_type["properties"] = copy.deepcopy(event["parameters"]) |
+ if "types" not in domain: |
+ domain["types"] = list() |
+ domain["types"].append(event_type) |
+ |
create_type_definitions(protocol, "::".join(config.imported.namespace) if config.imported else "") |
if not config.exported and len(protocol.exported_domains): |