FORCE option when deleting a NS instance
[osm/LW-UI.git] / lib / osm / osmclient / client.py
index 48c9815..d91d297 100644 (file)
@@ -77,6 +77,46 @@ class Client(object):
                                   json=vim_data)
         return None
 
+
+    def sdn_list(self):
+        token = self.get_token()
+        if token:
+            self._headers['Authorization'] = 'Bearer {}'.format(token)
+            self._headers['accept'] = 'application/json'
+            _url = "{0}/admin/v1/sdns".format(self._base_path)
+            return self._send_get(_url, headers=self._headers)
+
+    def sdn_delete(self, id):
+        token = self.get_token()
+        if token:
+            self._headers['Authorization'] = 'Bearer {}'.format(token)
+            self._headers['accept'] = 'application/json'
+            _url = "{0}/admin/v1/sdns/{1}".format(self._base_path, id)
+            return self._send_delete(_url, headers=self._headers)
+        return None
+
+    def sdn_get(self, id):
+        token = self.get_token()
+        if token:
+            self._headers['Authorization'] = 'Bearer {}'.format(token)
+            self._headers['accept'] = 'application/json'
+            _url = "{0}/admin/v1/sdns/{1}".format(self._base_path, id)
+            return self._send_get(_url, headers=self._headers)
+        return None
+
+    def sdn_create(self, sdn_data):
+        token = self.get_token()
+        headers = {}
+        if token:
+            headers['Authorization'] = 'Bearer {}'.format(token)
+            headers['Content-Type'] = 'application/json'
+            headers['accept'] = 'application/json'
+
+            _url = "{0}/admin/v1/sdns".format(self._base_path)
+            return self._send_post(_url, headers=headers,
+                                  json=sdn_data)
+        return None
+
     def nsd_list(self):
         token = self.get_token()
         if token:
@@ -212,13 +252,16 @@ class Client(object):
             return self._send_get(_url, headers=self._headers)
         return None
 
-    def ns_delete(self, id):
+    def ns_delete(self, id, force=None):
         token = self.get_token()
         if token:
             self._headers['Authorization'] = 'Bearer {}'.format(token)
-            #self._headers['Content-Type'] = 'application/yaml'
             self._headers['accept'] = 'application/json'
-            _url = "{0}/nslcm/v1/ns_instances_content/{1}".format(self._base_path, id)
+            query_path = ''
+            if force:
+                query_path = '?FORCE=true'
+            _url = "{0}/nslcm/v1/ns_instances_content/{1}{2}".format(self._base_path, id, query_path)
+
             return self._send_delete(_url, headers=self._headers)
         return None
 
@@ -235,6 +278,30 @@ class Client(object):
                                    json=action_payload)
         return None
 
+    def ns_op_list(self, id):
+        token = self.get_token()
+        headers = {}
+        if token:
+            headers['Authorization'] = 'Bearer {}'.format(token)
+            headers['Content-Type'] = 'application/json'
+            headers['accept'] = 'application/json'
+
+            _url = "{0}/nslcm/v1/ns_lcm_op_occs/?nsInstanceId={1}".format(self._base_path, id)
+            return self._send_get(_url, headers=headers)
+        return None
+
+    def ns_op(self, id):
+        token = self.get_token()
+        headers = {}
+        if token:
+            headers['Authorization'] = 'Bearer {}'.format(token)
+            headers['Content-Type'] = 'application/json'
+            headers['accept'] = 'application/json'
+
+            _url = "{0}/nslcm/v1/ns_lcm_op_occs/{1}".format(self._base_path, id)
+            return self._send_get(_url, headers=headers)
+        return None
+
     def vnfd_list(self):
         token = self.get_token()
         if token:
@@ -301,6 +368,7 @@ class Client(object):
             return self._send_post(_url, headers=headers,
                                    data=open('/tmp/' + package.name, 'rb'))
         return None
+
     def vnf_packages_artifacts(self, id):
         token = self.get_token()
         if token:
@@ -310,6 +378,26 @@ class Client(object):
             return self._send_get(_url, headers=self._headers)
         return None
 
+    def vnf_list(self):
+        token = self.get_token()
+        if token:
+            self._headers['Authorization'] = 'Bearer {}'.format(token)
+            self._headers['Content-Type'] = 'application/yaml'
+            self._headers['accept'] = 'application/json'
+            _url = "{0}/nslcm/v1/vnfrs".format(self._base_path)
+            return self._send_get(_url, headers=self._headers)
+        return None
+
+    def vnf_get(self, id):
+        token = self.get_token()
+        if token:
+            self._headers['Authorization'] = 'Bearer {}'.format(token)
+            self._headers['Content-Type'] = 'application/json'
+            self._headers['accept'] = 'application/json'
+            _url = "{0}/nslcm/v1/vnfrs/{1}".format(self._base_path, id)
+            return self._send_get(_url, headers=self._headers)
+        return None
+
     def _upload_package(self, filename, package):
         token = self.get_token()
         headers = {}