From 525122ade01998e34eabce74cb24d1c427c4b48d Mon Sep 17 00:00:00 2001 From: Scott Murray Date: Wed, 21 Sep 2022 13:27:49 -0400 Subject: [PATCH] kuksa_viss_client: Update cmd2 completer usage Update cmd2 usage to avoid using internal methods and fix breakage with newer versions of the cmd2 module. Upstream-Status: pending Signed-off-by: Scott Murray --- kuksa_viss_client/__main__.py | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/kuksa_viss_client/__main__.py b/kuksa_viss_client/__main__.py index 4d61433..d0b1af3 100755 --- a/kuksa_viss_client/__main__.py +++ b/kuksa_viss_client/__main__.py @@ -14,7 +14,7 @@ from typing import Dict, List import queue, time, os from pygments import highlight, lexers, formatters from cmd2 import Cmd, with_argparser, with_category, Cmd2ArgumentParser, CompletionItem -from cmd2.utils import CompletionError, basic_complete +from cmd2.exceptions import CompletionError import functools, subprocess DEFAULT_SERVER_ADDR = "127.0.0.1" DEFAULT_SERVER_PORT = 8090 @@ -82,7 +82,7 @@ class TestClient(Cmd): self.pathCompletionItems.append(CompletionItem(prefix + key+seperator, "Children of branch "+prefix+key)) - return basic_complete(text, line, begidx, endidx, self.pathCompletionItems) + return Cmd.basic_complete(self, text, line, begidx, endidx, self.pathCompletionItems) def subscribeCallback(self, path, attr, resp): print(path, attr) @@ -93,7 +93,7 @@ class TestClient(Cmd): self.pathCompletionItems = [] for id in self.subscribeIdToPath.keys(): self.pathCompletionItems.append(CompletionItem(id)) - return basic_complete(text, line, begidx, endidx, self.pathCompletionItems) + return Cmd.basic_complete(self, text, line, begidx, endidx, self.pathCompletionItems) COMM_SETUP_COMMANDS = "Communication Set-up Commands" VISS_COMMANDS = "Kuksa Interaction Commands" @@ -106,44 +106,44 @@ class TestClient(Cmd): ap_authorize = argparse.ArgumentParser() tokenfile_completer_method = functools.partial(Cmd.path_complete, path_filter=lambda path: (os.path.isdir(path) or path.endswith(".token"))) - ap_authorize.add_argument('Token', help='JWT(or the file storing the token) for authorizing the client.', completer_method=tokenfile_completer_method) + ap_authorize.add_argument('Token', help='JWT(or the file storing the token) for authorizing the client.', completer=tokenfile_completer_method) ap_setServerAddr = argparse.ArgumentParser() ap_setServerAddr.add_argument('IP', help='VISS Server IP Address', default=DEFAULT_SERVER_ADDR) ap_setServerAddr.add_argument('Port', type=int, help='VISS Server Websocket Port', default=DEFAULT_SERVER_PORT) ap_setValue = argparse.ArgumentParser() - ap_setValue.add_argument("Path", help="Path to be set", completer_method=path_completer) + ap_setValue.add_argument("Path", help="Path to be set", completer=path_completer) ap_setValue.add_argument("Value", help="Value to be set") ap_setValue.add_argument("Attribute", help="Attribute to be set", default="value", nargs=(0,1)) ap_getValue = argparse.ArgumentParser() - ap_getValue.add_argument("Path", help="Path to be read", completer_method=path_completer) + ap_getValue.add_argument("Path", help="Path to be read", completer=path_completer) ap_getValue.add_argument("Attribute", help="Attribute to be get", default="value", nargs=(0,1)) ap_setTargetValue = argparse.ArgumentParser() - ap_setTargetValue.add_argument("Path", help="Path whose target value to be set", completer_method=path_completer) + ap_setTargetValue.add_argument("Path", help="Path whose target value to be set", completer=path_completer) ap_setTargetValue.add_argument("Value", help="Value to be set") ap_getTargetValue = argparse.ArgumentParser() - ap_getTargetValue.add_argument("Path", help="Path whose target value to be read", completer_method=path_completer) + ap_getTargetValue.add_argument("Path", help="Path whose target value to be read", completer=path_completer) ap_subscribe = argparse.ArgumentParser() - ap_subscribe.add_argument("Path", help="Path to be subscribed", completer_method=path_completer) - ap_subscribe.add_argument("Attribute", help="Attribute to be subscribed", default="value", completer_method=path_completer, nargs=(0,1)) + ap_subscribe.add_argument("Path", help="Path to be subscribed", completer=path_completer) + ap_subscribe.add_argument("Attribute", help="Attribute to be subscribed", default="value", completer=path_completer, nargs=(0,1)) ap_unsubscribe = argparse.ArgumentParser() - ap_unsubscribe.add_argument("SubscribeId", help="Corresponding subscription Id", completer_method=subscriptionIdCompleter) + ap_unsubscribe.add_argument("SubscribeId", help="Corresponding subscription Id", completer=subscriptionIdCompleter) ap_getMetaData = argparse.ArgumentParser() - ap_getMetaData.add_argument("Path", help="Path whose metadata is to be read", completer_method=path_completer) + ap_getMetaData.add_argument("Path", help="Path whose metadata is to be read", completer=path_completer) ap_updateMetaData = argparse.ArgumentParser() - ap_updateMetaData.add_argument("Path", help="Path whose MetaData is to update", completer_method=path_completer) + ap_updateMetaData.add_argument("Path", help="Path whose MetaData is to update", completer=path_completer) ap_updateMetaData.add_argument("Json", help="MetaData to update. Note, only attributes can be update, if update children or the whole vss tree, use `updateVSSTree` instead.") ap_updateVSSTree = argparse.ArgumentParser() jsonfile_completer_method = functools.partial(Cmd.path_complete, path_filter=lambda path: (os.path.isdir(path) or path.endswith(".json"))) - ap_updateVSSTree.add_argument("Json", help="Json tree to update VSS", completer_method=jsonfile_completer_method) + ap_updateVSSTree.add_argument("Json", help="Json tree to update VSS", completer=jsonfile_completer_method) # Constructor -- 2.37.3