Skip to content

Commit

Permalink
config-perf: autogen changes for list with large query param to POST
Browse files Browse the repository at this point in the history
Complements controller repo change of f31fddec8a8d8be47dfa9521e7df2472283023ae

Change-Id: Iddde2e1da58eb03c03092cc681f9008570e946b2
Closes-Bug: #1433851
  • Loading branch information
Hampapur Ajay committed Mar 31, 2015
1 parent 958e22f commit 8e6e157
Showing 1 changed file with 5 additions and 43 deletions.
48 changes: 5 additions & 43 deletions ifmap_frontend.py
Original file line number Diff line number Diff line change
Expand Up @@ -1449,51 +1449,13 @@ def _generate_client_impl(self, gen_fname, gen_type_pfx):
else:
write(gen_file, ' """List all %ss."""' % (ident_name))

write(gen_file, " filt = None")
write(gen_file, " # TODO validate only one of id or name is given")
write(gen_file, " query_params = {}")
resource_list_args = ""
if parents:
write(gen_file, " if parent_fq_name:")
write(gen_file, " parent_fq_name_str = ':'.join(parent_fq_name)")
write(gen_file, " query_params['parent_fq_name_str'] = parent_fq_name_str")
write(gen_file, " elif parent_id:")
write(gen_file, " if isinstance(parent_id, list):")
write(gen_file, " query_params['parent_id'] = ','.join(parent_id)")
write(gen_file, " else:")
write(gen_file, " query_params['parent_id'] = parent_id")
resource_list_args += "parent_id = parent_id, parent_fq_name = parent_fq_name, "
if ident.getReferences():
write(gen_file, " if back_ref_id:")
write(gen_file, " if isinstance(back_ref_id, list):")
write(gen_file, " query_params['back_ref_id'] = ','.join(back_ref_id)")
write(gen_file, " else:")
write(gen_file, " query_params['back_ref_id'] = back_ref_id")
write(gen_file, "")
write(gen_file, " if obj_uuids:")
write(gen_file, " comma_sep_obj_uuids = ','.join(u for u in obj_uuids)")
write(gen_file, " query_params['obj_uuids'] = comma_sep_obj_uuids")
write(gen_file, " if fields:")
write(gen_file, " comma_sep_fields = ','.join(f for f in fields)")
write(gen_file, " query_params['fields'] = comma_sep_fields")
write(gen_file, " query_params['detail'] = detail")
write(gen_file, " query_params['count'] = count")
write(gen_file, "")
write(gen_file, " content = self._request_server(rest.OP_GET,")
write(gen_file, " vnc_api.gen.%s_client.%s.create_uri," %(gen_type_pfx, camel_name))
write(gen_file, " data = query_params)")
write(gen_file, "")
write(gen_file, " if not detail:")
write(gen_file, " return json.loads(content)")
write(gen_file, "")
write(gen_file, " %s_dicts = json.loads(content)['%ss']" %(method_name, ident_name))
write(gen_file, " %s_objs = []" %(method_name))
write(gen_file, " for %s_dict in %s_dicts:" %(method_name, method_name))
write(gen_file, " obj_dict = %s_dict['%s']" %(method_name, ident_name))
write(gen_file, " %s_obj = vnc_api.gen.resource_client.%s.from_dict(**obj_dict)" %(method_name, camel_name))
write(gen_file, " %s_obj.clear_pending_updates()" %(method_name))
write(gen_file, " %s_obj.set_server_conn(self)" %(method_name))
write(gen_file, " %s_objs.append(%s_obj)" %(method_name, method_name))
write(gen_file, "")
write(gen_file, " return %s_objs" %(method_name))
resource_list_args += "back_ref_id = back_ref_id, "
resource_list_args += "obj_uuids = obj_uuids, fields = fields, detail = detail, count = count"
write(gen_file, " return self.resource_list('%s', %s)" %(ident_name, resource_list_args))
write(gen_file, " #end %ss_list" %(method_name))
write(gen_file, "")
write(gen_file, " def %s_delete(self, fq_name = None, id = None, ifmap_id = None):" \
Expand Down

0 comments on commit 8e6e157

Please sign in to comment.