X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=osmclient%2Fv1%2Fnsd.py;h=52c5772d8a69ee92198825f8c313e5de5cc14312;hb=c009e0adcaaa63f0a998f47020472679fd295d38;hp=f2b74f12ea8ff9ca86875b48f972061853fca5f9;hpb=4c7e237e45bc6fe209006b4837a8e6b031e78e1c;p=osm%2Fosmclient.git diff --git a/osmclient/v1/nsd.py b/osmclient/v1/nsd.py index f2b74f1..52c5772 100644 --- a/osmclient/v1/nsd.py +++ b/osmclient/v1/nsd.py @@ -24,13 +24,22 @@ from osmclient.common.exceptions import ClientException class Nsd(object): - def __init__(self, http=None): + def __init__(self, http=None, client=None): self._http = http + self._client = client def list(self): - resp = self._http.get_cmd('api/running/nsd-catalog/nsd') - if resp and 'nsd:nsd' in resp: - return resp['nsd:nsd'] + resp = self._http.get_cmd('api/running/{}nsd-catalog/nsd' + .format(self._client.so_rbac_project_path)) + + if self._client._so_version == 'v3': + if resp and 'project-nsd:nsd' in resp: + return resp['project-nsd:nsd'] + else: + # Backwards Compatibility + if resp and 'nsd:nsd' in resp: + return resp['nsd:nsd'] + return list() def get(self, name): @@ -45,6 +54,7 @@ class Nsd(object): raise NotFound("cannot find nsd {}".format(nsd_name)) resp = self._http.delete_cmd( - 'api/running/nsd-catalog/nsd/{}'.format(nsd['id'])) + 'api/running/{}nsd-catalog/nsd/{}' + .format(self._client.so_rbac_project_path, nsd['id'])) if 'success' not in resp: raise ClientException("failed to delete nsd {}".format(nsd_name))