Parse Message Registry header info from the file

This extends the Message Registry parsing to include header
details that are part of the redfish resource.

Tested:
Verified that the MessageRegistry info all returns correctly
in the redfish response.

Change-Id: I6179c07f4067cd4520fce3e774d18530fede0a95
Signed-off-by: Jason M. Bills <jason.m.bills@linux.intel.com>
diff --git a/scripts/parse_registries.py b/scripts/parse_registries.py
index d9d6cf3..3eff312 100644
--- a/scripts/parse_registries.py
+++ b/scripts/parse_registries.py
@@ -37,8 +37,6 @@
 
 namespace redfish::message_registries::{}
 {{
-
-const std::array registry = {{
 '''
 
 SCRIPT_DIR = os.path.dirname(os.path.realpath(__file__))
@@ -65,6 +63,21 @@
 
     with open(file, 'w') as registry:
         registry.write(REGISTRY_HEADER.format(namespace))
+        # Parse the Registry header info
+        registry.write("const Header header = {")
+        registry.write(".copyright = \"{}\",".format(json["@Redfish.Copyright"]))
+        registry.write(".type = \"{}\",".format(json["@odata.type"]))
+        registry.write(".id = \"{}\",".format(json["Id"]))
+        registry.write(".name = \"{}\",".format(json["Name"]))
+        registry.write(".language = \"{}\",".format(json["Language"]))
+        registry.write(".description = \"{}\",".format(json["Description"]))
+        registry.write(".registryPrefix = \"{}\",".format(json["RegistryPrefix"]))
+        registry.write(".registryVersion = \"{}\",".format(json["RegistryVersion"]))
+        registry.write(".owningEntity = \"{}\",".format(json["OwningEntity"]))
+        registry.write("};")
+
+        # Parse each Message entry
+        registry.write("const std::array registry = {")
         for messageId, message in sorted(json["Messages"].items()):
             registry.write("MessageEntry{")
             registry.write("\"{}\",".format(messageId))