# HG changeset patch # User Goffi # Date 1619887174 -7200 # Node ID 62f490eff51c7f991c7f818d687a498449acf49c # Parent 8acaf857cd0a8d7c06c8f2829720ddd08ed21a19 jp (pubsub, blog): `rename` commands implementation diff -r 8acaf857cd0a -r 62f490eff51c sat_frontends/jp/cmd_blog.py --- a/sat_frontends/jp/cmd_blog.py Sat May 01 18:38:58 2021 +0200 +++ b/sat_frontends/jp/cmd_blog.py Sat May 01 18:39:34 2021 +0200 @@ -637,6 +637,42 @@ self.host.quit() +class Rename(base.CommandBase): + + def __init__(self, host): + base.CommandBase.__init__( + self, + host, + "rename", + use_pubsub=True, + pubsub_flags={C.SINGLE_ITEM}, + help=_("rename an blog item"), + ) + + def add_parser_options(self): + self.parser.add_argument( + "new_id", + help=_("new item id to use") + ) + + async def start(self): + try: + await self.host.bridge.mbRename( + self.args.service, + self.args.node, + self.args.item, + self.args.new_id, + self.profile, + ) + except Exception as e: + self.disp( + f"can't rename item: {e}", error=True + ) + self.host.quit(C.EXIT_BRIDGE_ERRBACK) + else: + self.disp("Item renamed") + self.host.quit(C.EXIT_OK) + class Preview(base.CommandBase, common.BaseEdit): # TODO: need to be rewritten with template output @@ -994,7 +1030,7 @@ await self.set_progress_id(progress_id) class Blog(base.CommandBase): - subcommands = (Set, Get, Edit, Preview, Import) + subcommands = (Set, Get, Edit, Rename, Preview, Import) def __init__(self, host): super(Blog, self).__init__( diff -r 8acaf857cd0a -r 62f490eff51c sat_frontends/jp/cmd_pubsub.py --- a/sat_frontends/jp/cmd_pubsub.py Sat May 01 18:38:58 2021 +0200 +++ b/sat_frontends/jp/cmd_pubsub.py Sat May 01 18:39:34 2021 +0200 @@ -960,6 +960,43 @@ self.host.quit() +class Rename(base.CommandBase): + + def __init__(self, host): + base.CommandBase.__init__( + self, + host, + "rename", + use_pubsub=True, + pubsub_flags={C.NODE, C.SINGLE_ITEM}, + help=_("rename a pubsub item"), + ) + + def add_parser_options(self): + self.parser.add_argument( + "new_id", + help=_("new item id to use") + ) + + async def start(self): + try: + await self.host.bridge.psItemRename( + self.args.service, + self.args.node, + self.args.item, + self.args.new_id, + self.profile, + ) + except Exception as e: + self.disp( + f"can't rename item: {e}", error=True + ) + self.host.quit(C.EXIT_BRIDGE_ERRBACK) + else: + self.disp("Item renamed") + self.host.quit(C.EXIT_OK) + + class Subscribe(base.CommandBase): def __init__(self, host): base.CommandBase.__init__( @@ -1982,6 +2019,7 @@ Get, Delete, Edit, + Rename, Subscribe, Unsubscribe, Subscriptions,