+ target.profile = _convert_content(content)
+
+ target.events.append(events.DmsChanged(
+ id=stxobj.id,
+ notificationEventType=NotificationEventEnum.MODIFY,
+ updatetime=stxobj.updatetime
+ ))
+
+
+def _convert_content(content: str):
+ # Convert api retrun content to dict object
+ # content = json.loads(stxobj_content)
+ admin_user = content["admin_user"]
+ cluster_api_endpoint = content["cluster_api_endpoint"]
+ cluster_ca_cert = _b64_encode_str(content["cluster_ca_cert"])
+ admin_client_cert = _b64_encode_str(content["admin_client_cert"])
+ admin_client_key = _b64_encode_str(content["admin_client_key"])
+ # admin_client_cert = base64.b64encode(
+ # bytes(content["admin_client_cert"], "utf-8"))
+ # admin_client_key = base64.b64encode(
+ # bytes(content["admin_client_key"], "utf-8"))
+ profile = {
+ "admin_user": admin_user,
+ "cluster_api_endpoint": cluster_api_endpoint,
+ "cluster_ca_cert": cluster_ca_cert,
+ "admin_client_cert": admin_client_cert,
+ "admin_client_key": admin_client_key
+ }
+
+ return json.dumps(profile)
+
+
+def _b64_encode_str(msg: str, encode: str = 'utf-8') -> str:
+ msg_bytes = msg.encode('utf-8')
+ base64_bytes = base64.b64encode(msg_bytes)
+ base64_msg = base64_bytes.decode('utf-8')
+ return base64_msg