camera_metadata: add typedefs for java generated code
Change-Id: I619261b9645cda669a3b5ee7c79f4c56d4d4c3d4
diff --git a/camera/docs/metadata_parser_xml.py b/camera/docs/metadata_parser_xml.py
index 4e5c35f..f0ed12e 100755
--- a/camera/docs/metadata_parser_xml.py
+++ b/camera/docs/metadata_parser_xml.py
@@ -107,6 +107,15 @@
for tag in tags.find_all('tag'):
self.metadata.insert_tag(tag['id'], tag.string)
+ types = self.soup.types
+ if types is not None:
+ for tp in types.find_all('typedef'):
+ languages = {}
+ for lang in tp.find_all('language'):
+ languages[lang['name']] = lang.string
+
+ self.metadata.insert_type(tp['name'], 'typedef', languages=languages)
+
# add all entries, preserving the ordering of the XML file
# this is important for future ABI compatibility when generating code
entry_filter = lambda x: x.name == 'entry' or x.name == 'clone'
@@ -149,6 +158,11 @@
d['visibility'] = entry.get('visibility')
#
+ # Typedef
+ #
+ d['type_name'] = entry.get('typedef')
+
+ #
# Enum
#
if entry.get('enum', 'false') == 'true':