Remove set_default_params method from client.py
[osm/osmclient.git] / osmclient / sol005 / ns.py
index e1a4f69..50a1dba 100644 (file)
@@ -278,10 +278,7 @@ class Ns(object):
             )
             headers = self._client._headers
             headers["Content-Type"] = "application/yaml"
-            http_header = [
-                "{}: {}".format(key, val) for (key, val) in list(headers.items())
-            ]
-            self._http.set_http_header(http_header)
+            self._http.set_http_header(headers)
             http_code, resp = self._http.post_cmd(
                 endpoint=self._apiBase, postfields_dict=ns
             )
@@ -589,7 +586,7 @@ class Ns(object):
                 http_code, resp = self._http.get2_cmd(
                     "{}/{}".format(self._apiBase, uuid)
                 )
-            if not uuid:
+            else:  # if not uuid
                 http_code, resp = self._http.get2_cmd(
                     "{}/{}/{}/{}".format(self._apiBase, uuid, project_name, ns_id)
                 )
@@ -667,3 +664,23 @@ class Ns(object):
             return nsr[field]
 
         raise NotFound("failed to find {} in ns {}".format(field, ns_name))
+
+    def heal(
+        self,
+        ns_name,
+        heal_dict,
+        wait=False,
+        timeout=None,
+    ):
+        """Heals a NS"""
+        self._logger.debug("")
+        self._client.get_token()
+        try:
+            op_data = heal_dict
+            if timeout:
+                op_data["timeout_ns_heal"] = timeout
+            op_id = self.exec_op(ns_name, op_name="heal", op_data=op_data, wait=wait)
+            print(str(op_id))
+        except ClientException as exc:
+            message = "failed to heal ns {}:\nerror:\n{}".format(ns_name, str(exc))
+            raise ClientException(message)