From 9d1e1e225602faa4f4c96f822eeb3561e2675f83 Mon Sep 17 00:00:00 2001 From: Seblu <sebastien.luttringer@smartjog.com> Date: Mon, 3 Jan 2011 14:28:14 +0100 Subject: [PATCH] Use RPC connection directlty instead of proxy. I change this because Proxy Remove RPCError exception in some case and this create a complex exception handling --- cccli/cli.py | 7 +++---- cccli/command.py | 24 ++++++++++++------------ 2 files changed, 15 insertions(+), 16 deletions(-) diff --git a/cccli/cli.py b/cccli/cli.py index 6899160..33601e9 100644 --- a/cccli/cli.py +++ b/cccli/cli.py @@ -59,15 +59,14 @@ class Cli(object): '''Connect to a cloud control server''' self.printer.debug("Connecting...") try: - rpcc = SimpleRpcClient.from_addr(self.settings["server"], + self.rpc = SimpleRpcClient.from_addr(self.settings["server"], self.settings["port"], enable_ssl=True, default_handler=CliHandler(), on_disconnect="quit", timeout=self.settings["timeout"] ) - rpcc.start(daemonize=True) - self.rpc = ConnectionProxy(rpcc) + self.rpc.start(daemonize=True) except Exception as e: s = "Connection failure!" if not str(e) else "Connection failure: %s"%str(e) raise cliError(s) @@ -77,7 +76,7 @@ class Cli(object): '''Handle server authentification''' self.printer.debug("Authenticating...") try: - self.rpc.authentify(self.settings["login"], self.settings["pass"]) + self.rpc.call("authentify", self.settings["login"], self.settings["pass"]) except Exception as e: s = "Authentication failure!" if not str(e) else "Authentication failure: %s"%str(e) raise cliError(s) diff --git a/cccli/command.py b/cccli/command.py index 01c378e..db4ceaf 100644 --- a/cccli/command.py +++ b/cccli/command.py @@ -156,7 +156,7 @@ class Command(object): def cmd_rcmd(self, argv): '''Show remote commands''' - for cmds in self.cli.rpc.list_commands(): + for cmds in self.cli.rpc.call("list_commands"): self.printer.out("%s"%cmds["name"]) cmd_rcmd.usage = "rcmd" cmd_rcmd.desc = "Print remote command list" @@ -181,7 +181,7 @@ class Command(object): if len(args) == 0: args.append("a") try: - objs = self.cli.rpc.list(str.join("", args)) + objs = self.cli.rpc.call("list", str.join("", args)) except RpcError as e: raise cmdError("RPCError: %s"%str(e)) if len(objs) == 0: @@ -227,7 +227,7 @@ class Command(object): tql = str.join("", argv[1:]) # print tql list result try: - objs = self.cli.rpc.list(tql) + objs = self.cli.rpc.call("list",tql) except RpcError as e: raise cmdError("RPCError: %s"%str(e)) if len(objs) == 0: @@ -245,7 +245,7 @@ class Command(object): if self.printer.ask("You request is on more than 5 objets. Are you really sure to %s its? (Yes, I am) "%argv[0], "Yes, I am") != "Yes, I am": raise cmdWarning("Aborted") try: - self.cli.rpc[argv[0]](tql) + self.cli.rpc.call(argv[0],tql) except RpcError as e: raise cmdError("RPCError: %s"%str(e)) @@ -285,7 +285,7 @@ class Command(object): argv.append(self.cli.settings["login"]) tql = "a~(%s)$con"%"|".join(argv[1:]) try: - objs = self.cli.rpc.list(tql) + objs = self.cli.rpc.call("list",tql) except RpcError as e: raise cmdError("RPCError: %s"%str(e)) for o in objs: @@ -296,9 +296,9 @@ class Command(object): '''List static tags on an account (current by default)''' if len(argv) == 1: argv.append(self.cli.settings["login"]) - for a in argv: + for a in argv[1:]: try: - tl = self.cli.rpc.tags(a) + tl = self.cli.rpc.call("tags",a) self.printer.out("%s: %s"%(a, tl)) except RpcError as e: raise cmdError("RPCError: %s"%str(e)) @@ -309,7 +309,7 @@ class Command(object): if len(argv) != 4: raise cmdBadArgument() try: - self.cli.rpc.addtag(argv[1], argv[2], argv[3]) + self.cli.rpc.call("addtag", argv[1], argv[2], argv[3]) except RpcError as e: raise cmdError("RPCError: %s"%str(e)) cmd_addtag.usage = "addtag <account> <tag> <value>" @@ -319,7 +319,7 @@ class Command(object): if len(argv) != 3: raise cmdBadArgument() try: - self.cli.rpc.deltag(argv[1], argv[2]) + self.cli.rpc.call("deltag", argv[1], argv[2]) except RpcError as e: raise cmdError("RPCError: %s"%str(e)) cmd_deltag.usage = "deltag <account> <tag>" @@ -329,7 +329,7 @@ class Command(object): if len(argv) != 3: raise cmdBadArgument() try: - self.cli.rpc.addaccount(argv[1], argv[2]) + self.cli.rpc.call("addaccount", argv[1], argv[2]) except RpcError as e: raise cmdError("RPCError: %s"%str(e)) cmd_addaccount.usage = "addaccount <name> <role>" @@ -339,7 +339,7 @@ class Command(object): if len(argv) != 2: raise cmdBadArgument() try: - self.cli.rpc.delaccount(argv[1]) + self.cli.rpc.call("delaccount", argv[1]) except RpcError as e: raise cmdError("RPCError: %s"%str(e)) cmd_delaccount.usage = "delaccount <name>" @@ -362,7 +362,7 @@ class Command(object): else: raise cmdBadArgument() try: - self.cli.rpc.passwd(argv[1], argv[2]) + self.cli.rpc.call("passwd", argv[1], argv[2]) except RpcError as e: raise cmdError("RPCError: %s"%str(e)) cmd_passwd.usage = "passwd <account> [password]" -- GitLab