elif field.uatype == 'DateTime': return 'datetime.utcnow()' elif field.uatype in ('Int16', 'Int32', 'Int64', 'UInt16', 'UInt32', 'UInt64', 'Double', 'Float', 'Byte'): return 0 elif field.uatype in 'ExtensionObject': return 'ExtensionObject()' else: return f'field(default_factory={field.uatype})' if __name__ == '__main__': import generate_model as gm xml_path = os.path.join(BASE_DIR, 'schemas', 'UA-Nodeset-master', 'Schema', 'Opc.Ua.Types.bsd') protocol_path = os.path.join(BASE_DIR, "asyncua", "ua", "uaprotocol_auto.py") p = gm.Parser(xml_path) model = p.parse() gm.add_basetype_members(model) gm.add_encoding_field(model) gm.remove_duplicates(model) gm.remove_vector_length(model) gm.split_requests(model) gm.fix_names(model) gm.remove_duplicate_types(model) gm.reorder_structs(model) c = CodeGenerator(model, protocol_path) c.run()
if field.uatype in ("String"): return None elif field.uatype in ("ByteString", "CharArray", "Char"): return None elif field.uatype in ("Boolean"): return "True" elif field.uatype in ("DateTime"): return "datetime.utcnow()" elif field.uatype in ("Int16", "Int32", "Int64", "UInt16", "UInt32", "UInt64", "Double", "Float", "Byte"): return 0 elif field.uatype in ("ExtensionObject"): return "ExtensionObject()" else: return field.uatype + "()" if __name__ == "__main__": import generate_model as gm xmlpath = "Opc.Ua.Types.bsd" protocolpath = "../opcua/ua/uaprotocol_auto.py" p = gm.Parser(xmlpath) model = p.parse() gm.add_basetype_members(model) gm.add_encoding_field(model) gm.remove_duplicates(model) gm.remove_vector_length(model) gm.split_requests(model) gm.fix_names(model) gm.remove_duplicate_types(model) c = CodeGenerator(model, protocolpath) c.run()