+ token = json.loads(resp) if resp else None
+ if token.get("message") == "change_password" and not pwd_change:
+ raise ClientException(
+ "Password Expired. Please update the password using change_password option"
+ )
+ self._token = token["id"]
+
+ if self._token is not None:
+ self._headers["Authorization"] = "Bearer {}".format(self._token)
+ http_header = [
+ "{}: {}".format(key, val)
+ for (key, val) in list(self._headers.items())
+ ]
+ self._http_client.set_http_header(http_header)
+
+ def get_version(self):
+ _, resp = self._http_client.get2_cmd(endpoint="/version", skip_query_admin=True)
+ # print(http_code, resp)
+ try:
+ resp = json.loads(resp)
+ version = resp.get("version")
+ date = resp.get("date")
+ except ValueError:
+ version = resp.split()[2]
+ date = resp.split()[4]
+ return "{} {}".format(version, date)
+
+ def set_default_params(self, **kwargs):
+ host = kwargs.pop("host", None)
+ if host is not None:
+ self._host = host
+ port = kwargs.pop("port", None)
+ if port is not None:
+ self._so_port = port
+ self._http_client.set_query_admin(**kwargs)