openubmc-bingo 0.5.240__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of openubmc-bingo might be problematic. Click here for more details.

Files changed (242) hide show
  1. bmcgo/__init__.py +12 -0
  2. bmcgo/bmcgo.py +22 -0
  3. bmcgo/bmcgo_config.py +176 -0
  4. bmcgo/cli/__init__.py +10 -0
  5. bmcgo/cli/cli.py +584 -0
  6. bmcgo/codegen/__init__.py +14 -0
  7. bmcgo/codegen/c/__init__.py +9 -0
  8. bmcgo/codegen/c/annotation.py +52 -0
  9. bmcgo/codegen/c/argument.py +42 -0
  10. bmcgo/codegen/c/codegen.py +153 -0
  11. bmcgo/codegen/c/comment.py +22 -0
  12. bmcgo/codegen/c/ctype_defination.py +353 -0
  13. bmcgo/codegen/c/helper.py +87 -0
  14. bmcgo/codegen/c/interface.py +63 -0
  15. bmcgo/codegen/c/method.py +82 -0
  16. bmcgo/codegen/c/property.py +180 -0
  17. bmcgo/codegen/c/renderer.py +21 -0
  18. bmcgo/codegen/c/signal.py +64 -0
  19. bmcgo/codegen/c/template/client.c.mako +145 -0
  20. bmcgo/codegen/c/template/client.h.mako +36 -0
  21. bmcgo/codegen/c/template/interface.c.mako +0 -0
  22. bmcgo/codegen/c/template/interface.introspect.xml.mako +99 -0
  23. bmcgo/codegen/c/template/micro_component.c.mako +32 -0
  24. bmcgo/codegen/c/template/public.c.mako +228 -0
  25. bmcgo/codegen/c/template/public.h.mako +128 -0
  26. bmcgo/codegen/c/template/server.c.mako +104 -0
  27. bmcgo/codegen/c/template/server.h.mako +36 -0
  28. bmcgo/codegen/lua/.lua-format +7 -0
  29. bmcgo/codegen/lua/Makefile +101 -0
  30. bmcgo/codegen/lua/__init__.py +9 -0
  31. bmcgo/codegen/lua/codegen.py +171 -0
  32. bmcgo/codegen/lua/proto/Makefile +87 -0
  33. bmcgo/codegen/lua/proto/ipmi_types.proto +17 -0
  34. bmcgo/codegen/lua/proto/types.proto +52 -0
  35. bmcgo/codegen/lua/script/check_intfs.py +161 -0
  36. bmcgo/codegen/lua/script/dto/__init__.py +11 -0
  37. bmcgo/codegen/lua/script/dto/exception.py +53 -0
  38. bmcgo/codegen/lua/script/dto/kepler_abstract.py +47 -0
  39. bmcgo/codegen/lua/script/dto/options.py +33 -0
  40. bmcgo/codegen/lua/script/dto/print_simple.py +19 -0
  41. bmcgo/codegen/lua/script/dto/redfish_api.py +241 -0
  42. bmcgo/codegen/lua/script/dto/url_route.py +195 -0
  43. bmcgo/codegen/lua/script/gen_db_json.py +444 -0
  44. bmcgo/codegen/lua/script/gen_depends.py +89 -0
  45. bmcgo/codegen/lua/script/gen_entry.py +263 -0
  46. bmcgo/codegen/lua/script/gen_feature_json.py +156 -0
  47. bmcgo/codegen/lua/script/gen_historical_local_db_json.py +88 -0
  48. bmcgo/codegen/lua/script/gen_intf_json.py +261 -0
  49. bmcgo/codegen/lua/script/gen_intf_rpc_json.py +575 -0
  50. bmcgo/codegen/lua/script/gen_ipmi_json.py +485 -0
  51. bmcgo/codegen/lua/script/gen_mdb_json.py +117 -0
  52. bmcgo/codegen/lua/script/gen_rpc_msg_json.py +487 -0
  53. bmcgo/codegen/lua/script/gen_schema.py +302 -0
  54. bmcgo/codegen/lua/script/ipmi_types_pb2.py +135 -0
  55. bmcgo/codegen/lua/script/loader/__init__.py +11 -0
  56. bmcgo/codegen/lua/script/loader/file_utils.py +33 -0
  57. bmcgo/codegen/lua/script/loader/kepler_abstract_collect.py +79 -0
  58. bmcgo/codegen/lua/script/loader/kepler_abstract_loader.py +47 -0
  59. bmcgo/codegen/lua/script/loader/redfish_loader.py +127 -0
  60. bmcgo/codegen/lua/script/lua_format.py +62 -0
  61. bmcgo/codegen/lua/script/mds_util.py +385 -0
  62. bmcgo/codegen/lua/script/merge_model.py +330 -0
  63. bmcgo/codegen/lua/script/merge_proto_algo.py +85 -0
  64. bmcgo/codegen/lua/script/proto_loader.py +47 -0
  65. bmcgo/codegen/lua/script/proto_plugin.py +140 -0
  66. bmcgo/codegen/lua/script/redfish_source_tree.py +118 -0
  67. bmcgo/codegen/lua/script/render_utils/__init__.py +38 -0
  68. bmcgo/codegen/lua/script/render_utils/base.py +25 -0
  69. bmcgo/codegen/lua/script/render_utils/client_lua.py +98 -0
  70. bmcgo/codegen/lua/script/render_utils/controller_lua.py +71 -0
  71. bmcgo/codegen/lua/script/render_utils/db_lua.py +224 -0
  72. bmcgo/codegen/lua/script/render_utils/error_lua.py +185 -0
  73. bmcgo/codegen/lua/script/render_utils/factory.py +52 -0
  74. bmcgo/codegen/lua/script/render_utils/ipmi_lua.py +159 -0
  75. bmcgo/codegen/lua/script/render_utils/ipmi_message_lua.py +24 -0
  76. bmcgo/codegen/lua/script/render_utils/mdb_lua.py +177 -0
  77. bmcgo/codegen/lua/script/render_utils/mdb_register.py +215 -0
  78. bmcgo/codegen/lua/script/render_utils/message_lua.py +26 -0
  79. bmcgo/codegen/lua/script/render_utils/messages_lua.py +156 -0
  80. bmcgo/codegen/lua/script/render_utils/model_lua.py +485 -0
  81. bmcgo/codegen/lua/script/render_utils/old_model_lua.py +429 -0
  82. bmcgo/codegen/lua/script/render_utils/plugin_lua.py +38 -0
  83. bmcgo/codegen/lua/script/render_utils/redfish_proto.py +86 -0
  84. bmcgo/codegen/lua/script/render_utils/request_lua.py +76 -0
  85. bmcgo/codegen/lua/script/render_utils/service_lua.py +130 -0
  86. bmcgo/codegen/lua/script/render_utils/utils_message_lua.py +125 -0
  87. bmcgo/codegen/lua/script/render_utils/validate_lua.py +221 -0
  88. bmcgo/codegen/lua/script/sep_ipmi_message_cmds.py +217 -0
  89. bmcgo/codegen/lua/script/template.py +166 -0
  90. bmcgo/codegen/lua/script/types_pb2.py +516 -0
  91. bmcgo/codegen/lua/script/utils.py +663 -0
  92. bmcgo/codegen/lua/script/validate.py +80 -0
  93. bmcgo/codegen/lua/script/yaml_to_json.py +73 -0
  94. bmcgo/codegen/lua/templates/Makefile +114 -0
  95. bmcgo/codegen/lua/templates/apps/Makefile +261 -0
  96. bmcgo/codegen/lua/templates/apps/Makefile.mdb.mk +64 -0
  97. bmcgo/codegen/lua/templates/apps/app.lua.mako +19 -0
  98. bmcgo/codegen/lua/templates/apps/class.lua.mako +35 -0
  99. bmcgo/codegen/lua/templates/apps/client.lua.mako +429 -0
  100. bmcgo/codegen/lua/templates/apps/controller.lua.mako +276 -0
  101. bmcgo/codegen/lua/templates/apps/datas.lua.mako +8 -0
  102. bmcgo/codegen/lua/templates/apps/db.lua.mako +89 -0
  103. bmcgo/codegen/lua/templates/apps/entry.lua.mako +128 -0
  104. bmcgo/codegen/lua/templates/apps/feature.lua.mako +37 -0
  105. bmcgo/codegen/lua/templates/apps/generate_route.mako +25 -0
  106. bmcgo/codegen/lua/templates/apps/impl_feature.lua.mako +72 -0
  107. bmcgo/codegen/lua/templates/apps/ipmi.lua.mako +97 -0
  108. bmcgo/codegen/lua/templates/apps/ipmi_cmd.lua.mako +18 -0
  109. bmcgo/codegen/lua/templates/apps/ipmi_message.lua.mako +36 -0
  110. bmcgo/codegen/lua/templates/apps/local_db.lua.mako +263 -0
  111. bmcgo/codegen/lua/templates/apps/main.lua.mako +25 -0
  112. bmcgo/codegen/lua/templates/apps/mc.lua.mako +77 -0
  113. bmcgo/codegen/lua/templates/apps/mdb.lua.mako +45 -0
  114. bmcgo/codegen/lua/templates/apps/mdb_interface.lua.mako +73 -0
  115. bmcgo/codegen/lua/templates/apps/message.lua.mako +38 -0
  116. bmcgo/codegen/lua/templates/apps/model.lua.mako +239 -0
  117. bmcgo/codegen/lua/templates/apps/orm_classes.lua.mako +16 -0
  118. bmcgo/codegen/lua/templates/apps/plugin.lua.mako +8 -0
  119. bmcgo/codegen/lua/templates/apps/redfish.proto.mako +47 -0
  120. bmcgo/codegen/lua/templates/apps/service.lua.mako +440 -0
  121. bmcgo/codegen/lua/templates/apps/signal_listen.lua.mako +19 -0
  122. bmcgo/codegen/lua/templates/apps/utils/default_intf.lua.mako +41 -0
  123. bmcgo/codegen/lua/templates/apps/utils/enum.mako +10 -0
  124. bmcgo/codegen/lua/templates/apps/utils/imports.mako +13 -0
  125. bmcgo/codegen/lua/templates/apps/utils/mdb_intf.lua.mako +25 -0
  126. bmcgo/codegen/lua/templates/apps/utils/mdb_obj.lua.mako +23 -0
  127. bmcgo/codegen/lua/templates/apps/utils/message.mako +160 -0
  128. bmcgo/codegen/lua/templates/apps/utils/request.lua.mako +59 -0
  129. bmcgo/codegen/lua/templates/apps/utils/validate.mako +83 -0
  130. bmcgo/codegen/lua/templates/errors.lua.mako +36 -0
  131. bmcgo/codegen/lua/templates/messages.lua.mako +32 -0
  132. bmcgo/codegen/lua/templates/new_app/.clang-format.mako +170 -0
  133. bmcgo/codegen/lua/templates/new_app/.gitignore.mako +26 -0
  134. bmcgo/codegen/lua/templates/new_app/CHANGELOG.md.mako +0 -0
  135. bmcgo/codegen/lua/templates/new_app/CMakeLists.txt.mako +29 -0
  136. bmcgo/codegen/lua/templates/new_app/Makefile.mako +25 -0
  137. bmcgo/codegen/lua/templates/new_app/README.md.mako +0 -0
  138. bmcgo/codegen/lua/templates/new_app/conanfile.py.mako +7 -0
  139. bmcgo/codegen/lua/templates/new_app/config.cfg.mako +6 -0
  140. bmcgo/codegen/lua/templates/new_app/mds/model.json.mako +3 -0
  141. bmcgo/codegen/lua/templates/new_app/mds/service.json.mako +21 -0
  142. bmcgo/codegen/lua/templates/new_app/permissions.ini.mako +16 -0
  143. bmcgo/codegen/lua/templates/new_app/src/lualib/${project_name}_app.lua.mako +16 -0
  144. bmcgo/codegen/lua/templates/new_app/src/service/main.lua.mako +25 -0
  145. bmcgo/codegen/lua/templates/new_app/test/integration/test_${project_name}.conf.mako +9 -0
  146. bmcgo/codegen/lua/templates/new_app/test/integration/test_${project_name}.lua.mako +47 -0
  147. bmcgo/codegen/lua/templates/new_app/test/unit/test.lua.mako +23 -0
  148. bmcgo/codegen/lua/templates/new_app/user_conf/rootfs/etc/systemd/system/${project_name}.service.mako +18 -0
  149. bmcgo/codegen/lua/templates/new_app/user_conf/rootfs/etc/systemd/system/multi-user.target.wants/${project_name}.service.link +1 -0
  150. bmcgo/component/__init__.py +10 -0
  151. bmcgo/component/analysis/analysis.py +183 -0
  152. bmcgo/component/analysis/build_deps.py +165 -0
  153. bmcgo/component/analysis/data_deps.py +333 -0
  154. bmcgo/component/analysis/dep-rules.json +912 -0
  155. bmcgo/component/analysis/dep_node.py +110 -0
  156. bmcgo/component/analysis/intf_deps.py +163 -0
  157. bmcgo/component/analysis/intf_validation.py +254 -0
  158. bmcgo/component/analysis/rule.py +211 -0
  159. bmcgo/component/analysis/smc_dfx_whitelist.json +11 -0
  160. bmcgo/component/analysis/sr_validation.py +391 -0
  161. bmcgo/component/build.py +222 -0
  162. bmcgo/component/component_dt_version_parse.py +348 -0
  163. bmcgo/component/component_helper.py +114 -0
  164. bmcgo/component/coverage/__init__.py +11 -0
  165. bmcgo/component/coverage/c_incremental_cov_report.template +53 -0
  166. bmcgo/component/coverage/incremental_cov.py +464 -0
  167. bmcgo/component/deploy.py +110 -0
  168. bmcgo/component/gen.py +169 -0
  169. bmcgo/component/package_info.py +236 -0
  170. bmcgo/component/template/conanbase.py.mako +278 -0
  171. bmcgo/component/template/conanfile.deploy.py.mako +40 -0
  172. bmcgo/component/test.py +947 -0
  173. bmcgo/errors.py +119 -0
  174. bmcgo/frame.py +217 -0
  175. bmcgo/functional/__init__.py +10 -0
  176. bmcgo/functional/analysis.py +96 -0
  177. bmcgo/functional/bmc_studio_action.py +98 -0
  178. bmcgo/functional/check.py +185 -0
  179. bmcgo/functional/conan_index_build.py +251 -0
  180. bmcgo/functional/config.py +332 -0
  181. bmcgo/functional/csr_build.py +724 -0
  182. bmcgo/functional/deploy.py +263 -0
  183. bmcgo/functional/diff.py +235 -0
  184. bmcgo/functional/fetch.py +235 -0
  185. bmcgo/functional/full_component.py +391 -0
  186. bmcgo/functional/maintain.py +381 -0
  187. bmcgo/functional/new.py +166 -0
  188. bmcgo/functional/schema_valid.py +111 -0
  189. bmcgo/functional/simple_sign.py +104 -0
  190. bmcgo/functional/upgrade.py +78 -0
  191. bmcgo/ipmigen/__init__.py +13 -0
  192. bmcgo/ipmigen/ctype_defination.py +82 -0
  193. bmcgo/ipmigen/ipmigen.py +309 -0
  194. bmcgo/ipmigen/template/cmd.c.mako +366 -0
  195. bmcgo/ipmigen/template/ipmi.c.mako +25 -0
  196. bmcgo/ipmigen/template/ipmi.h.mako +51 -0
  197. bmcgo/logger.py +176 -0
  198. bmcgo/misc.py +117 -0
  199. bmcgo/target/app.yml +17 -0
  200. bmcgo/target/install_sdk.yml +15 -0
  201. bmcgo/target/personal.yml +53 -0
  202. bmcgo/target/publish.yml +45 -0
  203. bmcgo/tasks/__init__.py +11 -0
  204. bmcgo/tasks/download_buildtools_hm.py +124 -0
  205. bmcgo/tasks/misc.py +15 -0
  206. bmcgo/tasks/task.py +354 -0
  207. bmcgo/tasks/task_build_conan.py +714 -0
  208. bmcgo/tasks/task_build_rootfs_img.py +595 -0
  209. bmcgo/tasks/task_buildgppbin.py +88 -0
  210. bmcgo/tasks/task_buildhpm_ext4.py +82 -0
  211. bmcgo/tasks/task_create_interface_config.py +122 -0
  212. bmcgo/tasks/task_download_buildtools.py +99 -0
  213. bmcgo/tasks/task_download_dependency.py +72 -0
  214. bmcgo/tasks/task_hpm_envir_prepare.py +112 -0
  215. bmcgo/tasks/task_packet_to_supporte.py +87 -0
  216. bmcgo/tasks/task_prepare.py +105 -0
  217. bmcgo/tasks/task_sign_and_pack_hpm.py +42 -0
  218. bmcgo/utils/__init__.py +10 -0
  219. bmcgo/utils/buffer.py +128 -0
  220. bmcgo/utils/combine_json_schemas.py +170 -0
  221. bmcgo/utils/component_post.py +54 -0
  222. bmcgo/utils/component_version_check.py +86 -0
  223. bmcgo/utils/config.py +1067 -0
  224. bmcgo/utils/fetch_component_code.py +232 -0
  225. bmcgo/utils/install_manager.py +61 -0
  226. bmcgo/utils/installations/__init__.py +10 -0
  227. bmcgo/utils/installations/base_installer.py +70 -0
  228. bmcgo/utils/installations/install_consts.py +30 -0
  229. bmcgo/utils/installations/install_plans/bingo.yml +11 -0
  230. bmcgo/utils/installations/install_workflow.py +50 -0
  231. bmcgo/utils/installations/installers/apt_installer.py +177 -0
  232. bmcgo/utils/installations/installers/pip_installer.py +46 -0
  233. bmcgo/utils/installations/version_util.py +100 -0
  234. bmcgo/utils/mapping_config_patch.py +443 -0
  235. bmcgo/utils/perf_analysis.py +114 -0
  236. bmcgo/utils/tools.py +704 -0
  237. bmcgo/worker.py +417 -0
  238. openubmc_bingo-0.5.240.dist-info/METADATA +30 -0
  239. openubmc_bingo-0.5.240.dist-info/RECORD +242 -0
  240. openubmc_bingo-0.5.240.dist-info/WHEEL +5 -0
  241. openubmc_bingo-0.5.240.dist-info/entry_points.txt +2 -0
  242. openubmc_bingo-0.5.240.dist-info/top_level.txt +1 -0
@@ -0,0 +1,166 @@
1
+ #!/usr/bin/env python3
2
+ # coding=utf-8
3
+ # Copyright (c) 2024 Huawei Technologies Co., Ltd.
4
+ # openUBMC is licensed under Mulan PSL v2.
5
+ # You can use this software according to the terms and conditions of the Mulan PSL v2.
6
+ # You may obtain a copy of Mulan PSL v2 at:
7
+ # http://license.coscl.org.cn/MulanPSL2
8
+ # THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
9
+ # EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
10
+ # MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
11
+ # See the Mulan PSL v2 for more details.
12
+
13
+ import json
14
+ import argparse
15
+ import os
16
+ import stat
17
+ import re
18
+ from mako.lookup import TemplateLookup
19
+
20
+ import merge_proto_algo
21
+ import proto_loader
22
+ import utils
23
+ from dto.options import Options
24
+ from render_utils import Factory
25
+ from bmcgo import misc
26
+ from bmcgo.utils.tools import Tools
27
+
28
+ tools = Tools("bmcgo_config")
29
+ IMPORT_STR = "imports"
30
+ METAVAR = "FILE"
31
+
32
+
33
+ def parse_input_args() -> Options:
34
+ parser = argparse.ArgumentParser()
35
+ parser.add_argument("-i", "--input", dest="source_file_path",
36
+ help="Source File Path", metavar=METAVAR)
37
+ parser.add_argument("-t", "--tpl", dest="template_name",
38
+ help="Template File Name", metavar=METAVAR)
39
+ parser.add_argument("-o", "--out", dest="output_file_path",
40
+ help="Path of the compilation result file", metavar=METAVAR)
41
+ parser.add_argument("-d", "--dir", dest="proto_root_path",
42
+ help="Root directory of the proto file in the input file",
43
+ metavar=METAVAR, default="")
44
+ parser.add_argument("-j", "--json_dir", dest="proto_json_root_path",
45
+ help="Root directory of the proto json file in the input file", metavar=METAVAR, default="")
46
+ parser.add_argument("-n", "--project_name", dest="project_name",
47
+ help="project name",
48
+ default="")
49
+ parser.add_argument("-v", "--version", dest="version",
50
+ help="version",
51
+ default=-1)
52
+ parser.add_argument("--enable_auto_merge", dest="enable_auto_merge",
53
+ help="Whether result files are automatically combined when customized.",
54
+ action=misc.STORE_TRUE, default=False)
55
+ parser.add_argument("-f", "--formatter", dest="formatter",
56
+ help="formatter targe file",
57
+ metavar=METAVAR, default="")
58
+ options = parser.parse_args()
59
+ if not options.template_name or not options.output_file_path:
60
+ parser.print_help()
61
+ return False, _
62
+ return True, Options.from_parse_args_result(options)
63
+
64
+
65
+ def do_load_import(root, options: Options, proto_path, filename):
66
+ json_file_path = f'{options.proto_json_root_path}/{proto_path}.json'
67
+ if not os.path.exists(json_file_path):
68
+ proto_loader.proto_to_json(
69
+ options.proto_root_path, proto_path, options.proto_json_root_path)
70
+ input_file = open(json_file_path, "r")
71
+ data = json.loads(input_file.read())
72
+ input_file.close()
73
+ if IMPORT_STR not in root:
74
+ root[IMPORT_STR] = {}
75
+ root[IMPORT_STR][filename] = data
76
+ return ''
77
+
78
+
79
+ def make_load_import(root, options: Options):
80
+ return lambda path, filename: do_load_import(root, options, path, filename)
81
+
82
+
83
+ def load_imports(root, options: Options):
84
+ if IMPORT_STR in root:
85
+ imports = {}
86
+ dependency = {}
87
+ for i in root[IMPORT_STR]:
88
+ is_proto = i.startswith("google/protobuf") or i == "types.proto" \
89
+ or i == 'ipmi_types.proto' or i == 'types.proto'
90
+ if is_proto:
91
+ continue
92
+ input_file = open(f'{options.proto_json_root_path}/{i}.json', "r")
93
+ data = json.loads(input_file.read())
94
+ input_file.close()
95
+ imports[data["package"]] = data
96
+ if i in root['dependency']:
97
+ dependency[data["package"]] = data
98
+ root[IMPORT_STR] = imports
99
+ root['dependency'] = dependency
100
+
101
+
102
+ def load_dest_data(options: Options):
103
+ return proto_loader.parse(
104
+ options.proto_root_path,
105
+ os.path.relpath(os.path.abspath(os.path.normpath(options.output_file_path)),
106
+ os.path.abspath(os.path.normpath(options.proto_root_path))),
107
+ options.proto_json_root_path
108
+ )
109
+
110
+
111
+ def generate(options: Options):
112
+ data = {}
113
+ if options.source_file_path:
114
+ input_file = os.fdopen(
115
+ os.open(options.source_file_path, os.O_RDONLY, stat.S_IRUSR), 'r')
116
+ data = json.loads(input_file.read())
117
+ input_file.close()
118
+ if isinstance(data, dict) and data.get("disable_gen", False):
119
+ return
120
+ if options.enable_auto_merge:
121
+ data = merge_proto_algo.merge_json(data, load_dest_data(options))
122
+
123
+ header = utils.Utils(data, options).make_header(
124
+ options.template_name, options.output_file_path)
125
+ lookup = TemplateLookup(directories=[os.getcwd() + "/"], input_encoding='utf-8')
126
+ template = lookup.get_template(options.template_name)
127
+ if os.path.exists(options.output_file_path):
128
+ os.remove(options.output_file_path)
129
+ load_imports(data, options)
130
+ os.makedirs(os.path.dirname(options.output_file_path), exist_ok=True)
131
+ output_file = os.fdopen(os.open(options.output_file_path,
132
+ os.O_WRONLY | os.O_CREAT | os.O_TRUNC, stat.S_IWUSR | stat.S_IRUSR), 'w')
133
+ use_frame_log = options.project_name in [
134
+ 'hwdiscovery', 'key_mgmt', 'maca', 'persistence', 'hwproxy', 'soctrl'
135
+ ]
136
+
137
+ options.version = int(options.version)
138
+ render_data = re.sub(r"\n\n\n+", "\n\n", template.render(
139
+ root=data,
140
+ utils_py=utils.Utils(data, options),
141
+ render_utils=Factory().new_utils(
142
+ template_name=options.template_name, data=data, options=options),
143
+ make_header=header,
144
+ load_import=make_load_import(data, options),
145
+ project_name=options.project_name,
146
+ version=options.version,
147
+ use_frame_log=use_frame_log,
148
+ ))
149
+ output_file.write(render_data)
150
+ output_file.close()
151
+
152
+ if len(options.formatter) > 0 and os.path.exists(options.formatter):
153
+ tools.run_command(["python3", options.formatter, options.output_file_path], command_echo=False)
154
+
155
+ os.chmod(options.output_file_path, 0o444)
156
+
157
+
158
+ def main():
159
+ ok, options = parse_input_args()
160
+ if not ok:
161
+ return
162
+ generate(options)
163
+
164
+
165
+ if __name__ == "__main__":
166
+ main()
@@ -0,0 +1,516 @@
1
+ #!/usr/bin/env python3
2
+ # coding=utf-8
3
+ # Copyright (c) 2024 Huawei Technologies Co., Ltd.
4
+ # openUBMC is licensed under Mulan PSL v2.
5
+ # You can use this software according to the terms and conditions of the Mulan PSL v2.
6
+ # You may obtain a copy of Mulan PSL v2 at:
7
+ # http://license.coscl.org.cn/MulanPSL2
8
+ # THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
9
+ # EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
10
+ # MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
11
+ # See the Mulan PSL v2 for more details.
12
+
13
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
14
+
15
+ import sys
16
+ from google.protobuf import descriptor as _descriptor
17
+ from google.protobuf import message as _message
18
+ from google.protobuf import reflection as _reflection
19
+ from google.protobuf import symbol_database as _symbol_database
20
+ # @@protoc_insertion_point(imports)
21
+ from google.protobuf import descriptor_pb2 as google_dot_protobuf_dot_descriptor__pb2
22
+ import ipmi_types_pb2 as ipmi__types__pb2
23
+
24
+
25
+ _b = sys.version_info[0] < 3 and (lambda x: x) or (lambda x: x.encode('latin1'))
26
+ _sym_db = _symbol_database.Default()
27
+
28
+ DESCRIPTOR = _descriptor.FileDescriptor(
29
+ name='types.proto',
30
+ package='',
31
+ syntax='proto3',
32
+ serialized_options=None,
33
+ serialized_pb=_b('\n\x0btypes.proto\x1a google/protobuf/descriptor.proto\x1a\x10ipmi_types.proto\"\x06\n\x04int8\
34
+ \"\x07\n\x05int16\"\x07\n\x05uint8\"\x08\n\x06uint16:/\n\x06unique\x12\x1d.google.protobuf.FieldOptions\
35
+ \x18\x91\xbf\x05 \x01(\x08:4\n\x0bprimary_key\x12\x1d.google.protobuf.FieldOptions\x18\x92\xbf\x05 \x01(\x08:0\
36
+ \n\x07\x64\x65\x66\x61ult\x12\x1d.google.protobuf.FieldOptions\x18\x93\xbf\x05 \x01(\t:.\n\x05\x64\x61tas\x12\x1d\
37
+ .google.protobuf.FieldOptions\x18\x94\xbf\x05 \x01(\t:3\n\nallow_null\x12\x1d.google.protobuf.FieldOptions\
38
+ \x18\x95\xbf\x05 \x01(\x08:1\n\x08validate\x12\x1d.google.protobuf.FieldOptions\x18\x96\xbf\x05 \x01(\t:0\n\x07max_len\
39
+ \x12\x1d.google.protobuf.FieldOptions\x18\x97\xbf\x05 \x01(\x05:4\n\x0bheader_name\x12\x1d.google.protobuf.FieldOptions\
40
+ \x18\x98\xbf\x05 \x01(\t:/\n\x06rename\x12\x1d.google.protobuf.FieldOptions\x18\x99\xbf\x05 \x01(\t:.\n\x05group\x12\x1d\
41
+ .google.protobuf.FieldOptions\x18\x9a\xbf\x05 \x01(\x05:/\n\x06schema\x12\x1d.google.protobuf.FieldOptions\
42
+ \x18\x9b\xbf\x05 \x01(\t:7\n\x0epersistence_ex\x12\x1d.google.protobuf.FieldOptions\x18\x9c\xbf\x05 \x01(\t:.\n\x05\x63\
43
+ onst\x12\x1d.google.protobuf.FieldOptions\x18\xf4\xbf\x05 \x01(\x08:4\n\x0b\x65mit_change\x12\x1d.google.protobuf.\
44
+ FieldOptions\x18\xf5\xbf\x05 \x01(\x08:6\n\remit_no_value\x12\x1d.google.protobuf.FieldOptions\x18\xf6\xbf\x05 \x01(\
45
+ \x08:1\n\x08\x65xplicit\x12\x1d.google.protobuf.FieldOptions\x18\xf7\xbf\x05 \x01(\x08:1\n\x08readonly\x12\x1d.google\
46
+ .protobuf.FieldOptions\x18\xf8\xbf\x05 \x01(\x08:4\n\tsingleton\x12\x1f.google.protobuf.MessageOptions\x18\x81\xf1\
47
+ \x04 \x01(\x08:7\n\x0cprimary_keys\x12\x1f.google.protobuf.MessageOptions\x18\x82\xf1\x04 \x01(\t:5\n\ntable_name\x12\
48
+ \x1f.google.protobuf.MessageOptions\x18\x83\xf1\x04 \x01(\t:.\n\x03url\x12\x1f.google.protobuf.MessageOptions\x18\x84\
49
+ \xf1\x04 \x01(\t:7\n\x0crequire_auth\x12\x1f.google.protobuf.MessageOptions\x18\x85\xf1\x04 \x01(\t:/\n\x04path\x12\x1f\
50
+ .google.protobuf.MessageOptions\x18\x86\xf1\x04 \x01(\t:4\n\tinterface\x12\x1f.google.protobuf.MessageOptions\x18\x87\
51
+ \xf1\x04 \x01(\t:2\n\x07\x66latten\x12\x1f.google.protobuf.MessageOptions\x18\x88\xf1\x04 \x01(\x08:/\n\x04\x61uth\x12\
52
+ \x1f.google.protobuf.MessageOptions\x18\x89\xf1\x04 \x01(\x08:0\n\x05query\x12\x1f.google.protobuf.MessageOptions\x18\
53
+ \x8a\xf1\x04 \x01(\x08:6\n\x0bpersistence\x12\x1f.google.protobuf.MessageOptions\x18\x8b\xf1\x04 \x01(\t:9\n\x0e\
54
+ user_privilege\x12\x1f.google.protobuf.MessageOptions\x18\x8c\xf1\x04 \x01(\t::\n\x0fsystem_lockdown\x12\x1f.google.\
55
+ protobuf.MessageOptions\x18\x8d\xf1\x04 \x01(\t:<\n\x11service_interface\x12\x1f.google.protobuf.ServiceOptions\x18\
56
+ \xf1\xa2\x04 \x01(\t:3\n\tinitiator\x12\x1e.google.protobuf.MethodOptions\x18\xe1\xd4\x03 \x01(\x08\x62\x06proto3'),
57
+ dependencies=[
58
+ google_dot_protobuf_dot_descriptor__pb2.DESCRIPTOR,
59
+ ipmi__types__pb2.DESCRIPTOR,
60
+ ]
61
+ )
62
+
63
+
64
+ UNIQUE_FIELD_NUMBER = 90001
65
+ unique = _descriptor.FieldDescriptor(
66
+ name='unique', full_name='unique', index=0,
67
+ number=90001, type=8, cpp_type=7, label=1,
68
+ has_default_value=False, default_value=False,
69
+ message_type=None, enum_type=None, containing_type=None,
70
+ is_extension=True, extension_scope=None,
71
+ serialized_options=None, file=DESCRIPTOR)
72
+ PRIMARY_KEY_FIELD_NUMBER = 90002
73
+ primary_key = _descriptor.FieldDescriptor(
74
+ name='primary_key', full_name='primary_key', index=1,
75
+ number=90002, type=8, cpp_type=7, label=1,
76
+ has_default_value=False, default_value=False,
77
+ message_type=None, enum_type=None, containing_type=None,
78
+ is_extension=True, extension_scope=None,
79
+ serialized_options=None, file=DESCRIPTOR)
80
+ DEFAULT_FIELD_NUMBER = 90003
81
+ default = _descriptor.FieldDescriptor(
82
+ name='default', full_name='default', index=2,
83
+ number=90003, type=9, cpp_type=9, label=1,
84
+ has_default_value=False, default_value=_b("").decode('utf-8'),
85
+ message_type=None, enum_type=None, containing_type=None,
86
+ is_extension=True, extension_scope=None,
87
+ serialized_options=None, file=DESCRIPTOR)
88
+ DATAS_FIELD_NUMBER = 90004
89
+ datas = _descriptor.FieldDescriptor(
90
+ name='datas', full_name='datas', index=3,
91
+ number=90004, type=9, cpp_type=9, label=1,
92
+ has_default_value=False, default_value=_b("").decode('utf-8'),
93
+ message_type=None, enum_type=None, containing_type=None,
94
+ is_extension=True, extension_scope=None,
95
+ serialized_options=None, file=DESCRIPTOR)
96
+ ALLOW_NULL_FIELD_NUMBER = 90005
97
+ allow_null = _descriptor.FieldDescriptor(
98
+ name='allow_null', full_name='allow_null', index=4,
99
+ number=90005, type=8, cpp_type=7, label=1,
100
+ has_default_value=False, default_value=False,
101
+ message_type=None, enum_type=None, containing_type=None,
102
+ is_extension=True, extension_scope=None,
103
+ serialized_options=None, file=DESCRIPTOR)
104
+ VALIDATE_FIELD_NUMBER = 90006
105
+ validate = _descriptor.FieldDescriptor(
106
+ name='validate', full_name='validate', index=5,
107
+ number=90006, type=9, cpp_type=9, label=1,
108
+ has_default_value=False, default_value=_b("").decode('utf-8'),
109
+ message_type=None, enum_type=None, containing_type=None,
110
+ is_extension=True, extension_scope=None,
111
+ serialized_options=None, file=DESCRIPTOR)
112
+ MAX_LEN_FIELD_NUMBER = 90007
113
+ max_len = _descriptor.FieldDescriptor(
114
+ name='max_len', full_name='max_len', index=6,
115
+ number=90007, type=5, cpp_type=1, label=1,
116
+ has_default_value=False, default_value=0,
117
+ message_type=None, enum_type=None, containing_type=None,
118
+ is_extension=True, extension_scope=None,
119
+ serialized_options=None, file=DESCRIPTOR)
120
+ HEADER_NAME_FIELD_NUMBER = 90008
121
+ header_name = _descriptor.FieldDescriptor(
122
+ name='header_name', full_name='header_name', index=7,
123
+ number=90008, type=9, cpp_type=9, label=1,
124
+ has_default_value=False, default_value=_b("").decode('utf-8'),
125
+ message_type=None, enum_type=None, containing_type=None,
126
+ is_extension=True, extension_scope=None,
127
+ serialized_options=None, file=DESCRIPTOR)
128
+ RENAME_FIELD_NUMBER = 90009
129
+ rename = _descriptor.FieldDescriptor(
130
+ name='rename', full_name='rename', index=8,
131
+ number=90009, type=9, cpp_type=9, label=1,
132
+ has_default_value=False, default_value=_b("").decode('utf-8'),
133
+ message_type=None, enum_type=None, containing_type=None,
134
+ is_extension=True, extension_scope=None,
135
+ serialized_options=None, file=DESCRIPTOR)
136
+ GROUP_FIELD_NUMBER = 90010
137
+ group = _descriptor.FieldDescriptor(
138
+ name='group', full_name='group', index=9,
139
+ number=90010, type=5, cpp_type=1, label=1,
140
+ has_default_value=False, default_value=0,
141
+ message_type=None, enum_type=None, containing_type=None,
142
+ is_extension=True, extension_scope=None,
143
+ serialized_options=None, file=DESCRIPTOR)
144
+ SCHEMA_FIELD_NUMBER = 90011
145
+ schema = _descriptor.FieldDescriptor(
146
+ name='schema', full_name='schema', index=10,
147
+ number=90011, type=9, cpp_type=9, label=1,
148
+ has_default_value=False, default_value=_b("").decode('utf-8'),
149
+ message_type=None, enum_type=None, containing_type=None,
150
+ is_extension=True, extension_scope=None,
151
+ serialized_options=None, file=DESCRIPTOR)
152
+ PERSISTENCE_EX_FIELD_NUMBER = 90012
153
+ persistence_ex = _descriptor.FieldDescriptor(
154
+ name='persistence_ex', full_name='persistence_ex', index=11,
155
+ number=90012, type=9, cpp_type=9, label=1,
156
+ has_default_value=False, default_value=_b("").decode('utf-8'),
157
+ message_type=None, enum_type=None, containing_type=None,
158
+ is_extension=True, extension_scope=None,
159
+ serialized_options=None, file=DESCRIPTOR)
160
+ CONST_FIELD_NUMBER = 90100
161
+ const = _descriptor.FieldDescriptor(
162
+ name='const', full_name='const', index=12,
163
+ number=90100, type=8, cpp_type=7, label=1,
164
+ has_default_value=False, default_value=False,
165
+ message_type=None, enum_type=None, containing_type=None,
166
+ is_extension=True, extension_scope=None,
167
+ serialized_options=None, file=DESCRIPTOR)
168
+ EMIT_CHANGE_FIELD_NUMBER = 90101
169
+ emit_change = _descriptor.FieldDescriptor(
170
+ name='emit_change', full_name='emit_change', index=13,
171
+ number=90101, type=8, cpp_type=7, label=1,
172
+ has_default_value=False, default_value=False,
173
+ message_type=None, enum_type=None, containing_type=None,
174
+ is_extension=True, extension_scope=None,
175
+ serialized_options=None, file=DESCRIPTOR)
176
+ EMIT_NO_VALUE_FIELD_NUMBER = 90102
177
+ emit_no_value = _descriptor.FieldDescriptor(
178
+ name='emit_no_value', full_name='emit_no_value', index=14,
179
+ number=90102, type=8, cpp_type=7, label=1,
180
+ has_default_value=False, default_value=False,
181
+ message_type=None, enum_type=None, containing_type=None,
182
+ is_extension=True, extension_scope=None,
183
+ serialized_options=None, file=DESCRIPTOR)
184
+ EXPLICIT_FIELD_NUMBER = 90103
185
+ explicit = _descriptor.FieldDescriptor(
186
+ name='explicit', full_name='explicit', index=15,
187
+ number=90103, type=8, cpp_type=7, label=1,
188
+ has_default_value=False, default_value=False,
189
+ message_type=None, enum_type=None, containing_type=None,
190
+ is_extension=True, extension_scope=None,
191
+ serialized_options=None, file=DESCRIPTOR)
192
+ READONLY_FIELD_NUMBER = 90104
193
+ readonly = _descriptor.FieldDescriptor(
194
+ name='readonly', full_name='readonly', index=16,
195
+ number=90104, type=8, cpp_type=7, label=1,
196
+ has_default_value=False, default_value=False,
197
+ message_type=None, enum_type=None, containing_type=None,
198
+ is_extension=True, extension_scope=None,
199
+ serialized_options=None, file=DESCRIPTOR)
200
+ SINGLETON_FIELD_NUMBER = 80001
201
+ singleton = _descriptor.FieldDescriptor(
202
+ name='singleton', full_name='singleton', index=17,
203
+ number=80001, type=8, cpp_type=7, label=1,
204
+ has_default_value=False, default_value=False,
205
+ message_type=None, enum_type=None, containing_type=None,
206
+ is_extension=True, extension_scope=None,
207
+ serialized_options=None, file=DESCRIPTOR)
208
+ PRIMARY_KEYS_FIELD_NUMBER = 80002
209
+ primary_keys = _descriptor.FieldDescriptor(
210
+ name='primary_keys', full_name='primary_keys', index=18,
211
+ number=80002, type=9, cpp_type=9, label=1,
212
+ has_default_value=False, default_value=_b("").decode('utf-8'),
213
+ message_type=None, enum_type=None, containing_type=None,
214
+ is_extension=True, extension_scope=None,
215
+ serialized_options=None, file=DESCRIPTOR)
216
+ TABLE_NAME_FIELD_NUMBER = 80003
217
+ table_name = _descriptor.FieldDescriptor(
218
+ name='table_name', full_name='table_name', index=19,
219
+ number=80003, type=9, cpp_type=9, label=1,
220
+ has_default_value=False, default_value=_b("").decode('utf-8'),
221
+ message_type=None, enum_type=None, containing_type=None,
222
+ is_extension=True, extension_scope=None,
223
+ serialized_options=None, file=DESCRIPTOR)
224
+ URL_FIELD_NUMBER = 80004
225
+ url = _descriptor.FieldDescriptor(
226
+ name='url', full_name='url', index=20,
227
+ number=80004, type=9, cpp_type=9, label=1,
228
+ has_default_value=False, default_value=_b("").decode('utf-8'),
229
+ message_type=None, enum_type=None, containing_type=None,
230
+ is_extension=True, extension_scope=None,
231
+ serialized_options=None, file=DESCRIPTOR)
232
+ REQUIRE_AUTH_FIELD_NUMBER = 80005
233
+ require_auth = _descriptor.FieldDescriptor(
234
+ name='require_auth', full_name='require_auth', index=21,
235
+ number=80005, type=9, cpp_type=9, label=1,
236
+ has_default_value=False, default_value=_b("").decode('utf-8'),
237
+ message_type=None, enum_type=None, containing_type=None,
238
+ is_extension=True, extension_scope=None,
239
+ serialized_options=None, file=DESCRIPTOR)
240
+ PATH_FIELD_NUMBER = 80006
241
+ path = _descriptor.FieldDescriptor(
242
+ name='path', full_name='path', index=22,
243
+ number=80006, type=9, cpp_type=9, label=1,
244
+ has_default_value=False, default_value=_b("").decode('utf-8'),
245
+ message_type=None, enum_type=None, containing_type=None,
246
+ is_extension=True, extension_scope=None,
247
+ serialized_options=None, file=DESCRIPTOR)
248
+ INTERFACE_FIELD_NUMBER = 80007
249
+ interface = _descriptor.FieldDescriptor(
250
+ name='interface', full_name='interface', index=23,
251
+ number=80007, type=9, cpp_type=9, label=1,
252
+ has_default_value=False, default_value=_b("").decode('utf-8'),
253
+ message_type=None, enum_type=None, containing_type=None,
254
+ is_extension=True, extension_scope=None,
255
+ serialized_options=None, file=DESCRIPTOR)
256
+ FLATTEN_FIELD_NUMBER = 80008
257
+ flatten = _descriptor.FieldDescriptor(
258
+ name='flatten', full_name='flatten', index=24,
259
+ number=80008, type=8, cpp_type=7, label=1,
260
+ has_default_value=False, default_value=False,
261
+ message_type=None, enum_type=None, containing_type=None,
262
+ is_extension=True, extension_scope=None,
263
+ serialized_options=None, file=DESCRIPTOR)
264
+ AUTH_FIELD_NUMBER = 80009
265
+ auth = _descriptor.FieldDescriptor(
266
+ name='auth', full_name='auth', index=25,
267
+ number=80009, type=8, cpp_type=7, label=1,
268
+ has_default_value=False, default_value=False,
269
+ message_type=None, enum_type=None, containing_type=None,
270
+ is_extension=True, extension_scope=None,
271
+ serialized_options=None, file=DESCRIPTOR)
272
+ QUERY_FIELD_NUMBER = 80010
273
+ query = _descriptor.FieldDescriptor(
274
+ name='query', full_name='query', index=26,
275
+ number=80010, type=8, cpp_type=7, label=1,
276
+ has_default_value=False, default_value=False,
277
+ message_type=None, enum_type=None, containing_type=None,
278
+ is_extension=True, extension_scope=None,
279
+ serialized_options=None, file=DESCRIPTOR)
280
+ PERSISTENCE_FIELD_NUMBER = 80011
281
+ persistence = _descriptor.FieldDescriptor(
282
+ name='persistence', full_name='persistence', index=27,
283
+ number=80011, type=9, cpp_type=9, label=1,
284
+ has_default_value=False, default_value=_b("").decode('utf-8'),
285
+ message_type=None, enum_type=None, containing_type=None,
286
+ is_extension=True, extension_scope=None,
287
+ serialized_options=None, file=DESCRIPTOR)
288
+ USER_PRIVILEGE_FIELD_NUMBER = 80012
289
+ user_privilege = _descriptor.FieldDescriptor(
290
+ name='user_privilege', full_name='user_privilege', index=28,
291
+ number=80012, type=9, cpp_type=9, label=1,
292
+ has_default_value=False, default_value=_b("").decode('utf-8'),
293
+ message_type=None, enum_type=None, containing_type=None,
294
+ is_extension=True, extension_scope=None,
295
+ serialized_options=None, file=DESCRIPTOR)
296
+ SYSTEM_LOCKDOWN_FIELD_NUMBER = 80013
297
+ system_lockdown = _descriptor.FieldDescriptor(
298
+ name='system_lockdown', full_name='system_lockdown', index=29,
299
+ number=80013, type=9, cpp_type=9, label=1,
300
+ has_default_value=False, default_value=_b("").decode('utf-8'),
301
+ message_type=None, enum_type=None, containing_type=None,
302
+ is_extension=True, extension_scope=None,
303
+ serialized_options=None, file=DESCRIPTOR)
304
+ SERVICE_INTERFACE_FIELD_NUMBER = 70001
305
+ service_interface = _descriptor.FieldDescriptor(
306
+ name='service_interface', full_name='service_interface', index=30,
307
+ number=70001, type=9, cpp_type=9, label=1,
308
+ has_default_value=False, default_value=_b("").decode('utf-8'),
309
+ message_type=None, enum_type=None, containing_type=None,
310
+ is_extension=True, extension_scope=None,
311
+ serialized_options=None, file=DESCRIPTOR)
312
+ INITIATOR_FIELD_NUMBER = 60001
313
+ initiator = _descriptor.FieldDescriptor(
314
+ name='initiator', full_name='initiator', index=31,
315
+ number=60001, type=8, cpp_type=7, label=1,
316
+ has_default_value=False, default_value=False,
317
+ message_type=None, enum_type=None, containing_type=None,
318
+ is_extension=True, extension_scope=None,
319
+ serialized_options=None, file=DESCRIPTOR)
320
+
321
+
322
+ _INT8 = _descriptor.Descriptor(
323
+ name='int8',
324
+ full_name='int8',
325
+ filename=None,
326
+ file=DESCRIPTOR,
327
+ containing_type=None,
328
+ fields=[
329
+ ],
330
+ extensions=[
331
+ ],
332
+ nested_types=[],
333
+ enum_types=[
334
+ ],
335
+ serialized_options=None,
336
+ is_extendable=False,
337
+ syntax='proto3',
338
+ extension_ranges=[],
339
+ oneofs=[
340
+ ],
341
+ serialized_start=67,
342
+ serialized_end=73,
343
+ )
344
+
345
+
346
+ _INT16 = _descriptor.Descriptor(
347
+ name='int16',
348
+ full_name='int16',
349
+ filename=None,
350
+ file=DESCRIPTOR,
351
+ containing_type=None,
352
+ fields=[
353
+ ],
354
+ extensions=[
355
+ ],
356
+ nested_types=[],
357
+ enum_types=[
358
+ ],
359
+ serialized_options=None,
360
+ is_extendable=False,
361
+ syntax='proto3',
362
+ extension_ranges=[],
363
+ oneofs=[
364
+ ],
365
+ serialized_start=75,
366
+ serialized_end=82,
367
+ )
368
+
369
+
370
+ _UINT8 = _descriptor.Descriptor(
371
+ name='uint8',
372
+ full_name='uint8',
373
+ filename=None,
374
+ file=DESCRIPTOR,
375
+ containing_type=None,
376
+ fields=[
377
+ ],
378
+ extensions=[
379
+ ],
380
+ nested_types=[],
381
+ enum_types=[
382
+ ],
383
+ serialized_options=None,
384
+ is_extendable=False,
385
+ syntax='proto3',
386
+ extension_ranges=[],
387
+ oneofs=[
388
+ ],
389
+ serialized_start=84,
390
+ serialized_end=91,
391
+ )
392
+
393
+
394
+ _UINT16 = _descriptor.Descriptor(
395
+ name='uint16',
396
+ full_name='uint16',
397
+ filename=None,
398
+ file=DESCRIPTOR,
399
+ containing_type=None,
400
+ fields=[
401
+ ],
402
+ extensions=[
403
+ ],
404
+ nested_types=[],
405
+ enum_types=[
406
+ ],
407
+ serialized_options=None,
408
+ is_extendable=False,
409
+ syntax='proto3',
410
+ extension_ranges=[],
411
+ oneofs=[
412
+ ],
413
+ serialized_start=93,
414
+ serialized_end=101,
415
+ )
416
+
417
+ DESCRIPTOR.message_types_by_name['int8'] = _INT8
418
+ DESCRIPTOR.message_types_by_name['int16'] = _INT16
419
+ DESCRIPTOR.message_types_by_name['uint8'] = _UINT8
420
+ DESCRIPTOR.message_types_by_name['uint16'] = _UINT16
421
+ DESCRIPTOR.extensions_by_name['unique'] = unique
422
+ DESCRIPTOR.extensions_by_name['primary_key'] = primary_key
423
+ DESCRIPTOR.extensions_by_name['default'] = default
424
+ DESCRIPTOR.extensions_by_name['datas'] = datas
425
+ DESCRIPTOR.extensions_by_name['allow_null'] = allow_null
426
+ DESCRIPTOR.extensions_by_name['validate'] = validate
427
+ DESCRIPTOR.extensions_by_name['max_len'] = max_len
428
+ DESCRIPTOR.extensions_by_name['header_name'] = header_name
429
+ DESCRIPTOR.extensions_by_name['rename'] = rename
430
+ DESCRIPTOR.extensions_by_name['group'] = group
431
+ DESCRIPTOR.extensions_by_name['schema'] = schema
432
+ DESCRIPTOR.extensions_by_name['persistence_ex'] = persistence_ex
433
+ DESCRIPTOR.extensions_by_name['const'] = const
434
+ DESCRIPTOR.extensions_by_name['emit_change'] = emit_change
435
+ DESCRIPTOR.extensions_by_name['emit_no_value'] = emit_no_value
436
+ DESCRIPTOR.extensions_by_name['explicit'] = explicit
437
+ DESCRIPTOR.extensions_by_name['readonly'] = readonly
438
+ DESCRIPTOR.extensions_by_name['singleton'] = singleton
439
+ DESCRIPTOR.extensions_by_name['primary_keys'] = primary_keys
440
+ DESCRIPTOR.extensions_by_name['table_name'] = table_name
441
+ DESCRIPTOR.extensions_by_name['url'] = url
442
+ DESCRIPTOR.extensions_by_name['require_auth'] = require_auth
443
+ DESCRIPTOR.extensions_by_name['path'] = path
444
+ DESCRIPTOR.extensions_by_name['interface'] = interface
445
+ DESCRIPTOR.extensions_by_name['flatten'] = flatten
446
+ DESCRIPTOR.extensions_by_name['auth'] = auth
447
+ DESCRIPTOR.extensions_by_name['query'] = query
448
+ DESCRIPTOR.extensions_by_name['persistence'] = persistence
449
+ DESCRIPTOR.extensions_by_name['user_privilege'] = user_privilege
450
+ DESCRIPTOR.extensions_by_name['system_lockdown'] = system_lockdown
451
+ DESCRIPTOR.extensions_by_name['service_interface'] = service_interface
452
+ DESCRIPTOR.extensions_by_name['initiator'] = initiator
453
+ _sym_db.RegisterFileDescriptor(DESCRIPTOR)
454
+
455
+ int8 = _reflection.GeneratedProtocolMessageType('int8', (_message.Message,), dict(
456
+ DESCRIPTOR=_INT8,
457
+ __module__='types_pb2'
458
+ # @@protoc_insertion_point(class_scope:int8)
459
+ ))
460
+ _sym_db.RegisterMessage(int8)
461
+
462
+ int16 = _reflection.GeneratedProtocolMessageType('int16', (_message.Message,), dict(
463
+ DESCRIPTOR=_INT16,
464
+ __module__='types_pb2'
465
+ # @@protoc_insertion_point(class_scope:int16)
466
+ ))
467
+ _sym_db.RegisterMessage(int16)
468
+
469
+ uint8 = _reflection.GeneratedProtocolMessageType('uint8', (_message.Message,), dict(
470
+ DESCRIPTOR=_UINT8,
471
+ __module__='types_pb2'
472
+ # @@protoc_insertion_point(class_scope:uint8)
473
+ ))
474
+ _sym_db.RegisterMessage(uint8)
475
+
476
+ uint16 = _reflection.GeneratedProtocolMessageType('uint16', (_message.Message,), dict(
477
+ DESCRIPTOR=_UINT16,
478
+ __module__='types_pb2'
479
+ # @@protoc_insertion_point(class_scope:uint16)
480
+ ))
481
+ _sym_db.RegisterMessage(uint16)
482
+
483
+ google_dot_protobuf_dot_descriptor__pb2.FieldOptions.RegisterExtension(unique)
484
+ google_dot_protobuf_dot_descriptor__pb2.FieldOptions.RegisterExtension(primary_key)
485
+ google_dot_protobuf_dot_descriptor__pb2.FieldOptions.RegisterExtension(default)
486
+ google_dot_protobuf_dot_descriptor__pb2.FieldOptions.RegisterExtension(datas)
487
+ google_dot_protobuf_dot_descriptor__pb2.FieldOptions.RegisterExtension(allow_null)
488
+ google_dot_protobuf_dot_descriptor__pb2.FieldOptions.RegisterExtension(validate)
489
+ google_dot_protobuf_dot_descriptor__pb2.FieldOptions.RegisterExtension(max_len)
490
+ google_dot_protobuf_dot_descriptor__pb2.FieldOptions.RegisterExtension(header_name)
491
+ google_dot_protobuf_dot_descriptor__pb2.FieldOptions.RegisterExtension(rename)
492
+ google_dot_protobuf_dot_descriptor__pb2.FieldOptions.RegisterExtension(group)
493
+ google_dot_protobuf_dot_descriptor__pb2.FieldOptions.RegisterExtension(schema)
494
+ google_dot_protobuf_dot_descriptor__pb2.FieldOptions.RegisterExtension(persistence_ex)
495
+ google_dot_protobuf_dot_descriptor__pb2.FieldOptions.RegisterExtension(const)
496
+ google_dot_protobuf_dot_descriptor__pb2.FieldOptions.RegisterExtension(emit_change)
497
+ google_dot_protobuf_dot_descriptor__pb2.FieldOptions.RegisterExtension(emit_no_value)
498
+ google_dot_protobuf_dot_descriptor__pb2.FieldOptions.RegisterExtension(explicit)
499
+ google_dot_protobuf_dot_descriptor__pb2.FieldOptions.RegisterExtension(readonly)
500
+ google_dot_protobuf_dot_descriptor__pb2.MessageOptions.RegisterExtension(singleton)
501
+ google_dot_protobuf_dot_descriptor__pb2.MessageOptions.RegisterExtension(primary_keys)
502
+ google_dot_protobuf_dot_descriptor__pb2.MessageOptions.RegisterExtension(table_name)
503
+ google_dot_protobuf_dot_descriptor__pb2.MessageOptions.RegisterExtension(url)
504
+ google_dot_protobuf_dot_descriptor__pb2.MessageOptions.RegisterExtension(require_auth)
505
+ google_dot_protobuf_dot_descriptor__pb2.MessageOptions.RegisterExtension(path)
506
+ google_dot_protobuf_dot_descriptor__pb2.MessageOptions.RegisterExtension(interface)
507
+ google_dot_protobuf_dot_descriptor__pb2.MessageOptions.RegisterExtension(flatten)
508
+ google_dot_protobuf_dot_descriptor__pb2.MessageOptions.RegisterExtension(auth)
509
+ google_dot_protobuf_dot_descriptor__pb2.MessageOptions.RegisterExtension(query)
510
+ google_dot_protobuf_dot_descriptor__pb2.MessageOptions.RegisterExtension(persistence)
511
+ google_dot_protobuf_dot_descriptor__pb2.MessageOptions.RegisterExtension(user_privilege)
512
+ google_dot_protobuf_dot_descriptor__pb2.MessageOptions.RegisterExtension(system_lockdown)
513
+ google_dot_protobuf_dot_descriptor__pb2.ServiceOptions.RegisterExtension(service_interface)
514
+ google_dot_protobuf_dot_descriptor__pb2.MethodOptions.RegisterExtension(initiator)
515
+
516
+ # @@protoc_insertion_point(module_scope)