OSM vnf API handling
"""
-from osmclient.common.exceptions import NotFound
+from osmclient.common.exceptions import NotFound
class Vnf(object):
- def __init__(self,http=None):
- self._http=http
+ def __init__(self, http=None, client=None):
+ self._http = http
+ self._client = client
def list(self):
- resp = self._http.get_cmd('v1/api/operational/vnfr-catalog/vnfr')
- if resp and 'vnfr:vnfr' in resp:
- return resp['vnfr:vnfr']
- return list()
+ resp = self._http.get_cmd(
+ "v1/api/operational/{}vnfr-catalog/vnfr".format(
+ self._client.so_rbac_project_path
+ )
+ )
+ if resp and "vnfr:vnfr" in resp:
+ return resp["vnfr:vnfr"]
+ return list()
- def get(self,vnf_name):
- vnfs=self.list()
+ def get(self, vnf_name):
+ vnfs = self.list()
for vnf in vnfs:
- if vnf_name == vnf['name']:
+ if vnf_name == vnf["name"]:
return vnf
- if vnf_name == vnf['id']:
+ if vnf_name == vnf["id"]:
return vnf
raise NotFound("vnf {} not found".format(vnf_name))
- def get_monitoring(self,vnf_name):
- vnf=self.get(vnf_name)
- if vnf and 'monitoring-param' in vnf:
- return vnf['monitoring-param']
+ def get_monitoring(self, vnf_name):
+ vnf = self.get(vnf_name)
+ if vnf and "monitoring-param" in vnf:
+ return vnf["monitoring-param"]
return None