+ @staticmethod
+ def check_odl_shutdown_state(node):
+ """Check the status of ODL client shutdown.
+
+ :param node: Honeycomb node.
+ :type node: dict
+ :returns: True when ODL is stopped.
+ :rtype: bool
+ :raises HoneycombError: When the response is not code 200: OK.
+ """
+
+ cmd = "pgrep -f karaf"
+ path = HcUtil.read_path_from_url_file(
+ "odl_client/odl_netconf_connector")
+
+ try:
+ HTTPRequest.get(node, path, timeout=10, enable_logging=False)
+ raise HoneycombError("ODL client is still running.")
+ except HTTPRequestError:
+ logger.debug("Connection refused, checking process state....")
+ ssh = SSH()
+ ssh.connect(node)
+ ret_code, _, _ = ssh.exec_command(cmd)
+ if ret_code == 0:
+ raise HoneycombError("ODL client is still running.")
+
+ return True
+