diff options
author | 2018-01-09 15:43:47 +0800 | |
---|---|---|
committer | 2018-01-09 16:10:55 +0800 | |
commit | 5f7eea06b479da52fa15d020b0cb738ed09da641 (patch) | |
tree | abe0423b6ac28d7ecf6e6e6a842a3e5882d5df37 | |
parent | e0ed4f97a865118ec8447b0657edc9a93fd5cc2d (diff) |
Refactor ns get logic of vfc-nfvo-lcm
Change-Id: I8ebd50363177655fae5609fbfc0c42b6df6e8c0d
Issue-ID: VFC-654
Signed-off-by: fujinhua <fu.jinhua@zte.com.cn>
-rw-r--r-- | lcm/ns/ns_get.py | 49 |
1 files changed, 19 insertions, 30 deletions
diff --git a/lcm/ns/ns_get.py b/lcm/ns/ns_get.py index 030e42c1..9fd4cf16 100644 --- a/lcm/ns/ns_get.py +++ b/lcm/ns/ns_get.py @@ -25,39 +25,28 @@ class GetNSInfoService(object): self.ns_filter = nsfilter def get_ns_info(self): - if self.ns_filter: - if ("ns_inst_id" in self.ns_filter): - ns_inst_id = self.ns_filter["ns_inst_id"] - ns_inst_infos = NSInstModel.objects.filter(id=ns_inst_id) - if ("csarId" in self.ns_filter): - csar_id = self.ns_filter["csarId"] - ns_inst_infos = NSInstModel.objects.filter(nsd_id=csar_id) + ns_insts = None + if self.ns_filter and "ns_inst_id" in self.ns_filter: + ns_inst_id = self.ns_filter["ns_inst_id"] + ns_insts = NSInstModel.objects.filter(id=ns_inst_id) + elif self.ns_filter and "csarId" in self.ns_filter: + csar_id = self.ns_filter["csarId"] + ns_insts = NSInstModel.objects.filter(nsd_id=csar_id) else: - ns_inst_infos = NSInstModel.objects.all() + ns_insts = NSInstModel.objects.all() - ns_info_list = [] - for info in ns_inst_infos: - ret = self.get_single_ns_info(info.id) - if not ret: - continue - ns_info_list.append(ret) - return ns_info_list + return [self.get_single_ns_info(ns_inst) for ns_inst in ns_insts] - def get_single_ns_info(self, ns_inst_id): - ns_insts = NSInstModel.objects.filter(id=ns_inst_id) - if not ns_insts: - return None - ns_inst_info = ns_insts[0] - ret = { - 'nsInstanceId': ns_inst_info.id, - 'nsName': ns_inst_info.name, - 'description': ns_inst_info.description, - 'nsdId': ns_inst_info.nsd_id, - 'vnfInfoId': self.get_vnf_infos(ns_inst_id), - 'vlInfo': self.get_vl_infos(ns_inst_id), - 'vnffgInfo': self.get_vnffg_infos(ns_inst_id, ns_inst_info.nsd_model), - 'nsState': ns_inst_info.status} - return ret + def get_single_ns_info(self, ns_inst): + return { + 'nsInstanceId': ns_inst.id, + 'nsName': ns_inst.name, + 'description': ns_inst.description, + 'nsdId': ns_inst.nsd_id, + 'vnfInfoId': self.get_vnf_infos(ns_inst.id), + 'vlInfo': self.get_vl_infos(ns_inst.id), + 'vnffgInfo': self.get_vnffg_infos(ns_inst.id, ns_inst.nsd_model), + 'nsState': ns_inst.status} @staticmethod def get_vnf_infos(ns_inst_id): |