From 7eb528232edeaa956bcfb1cc26596b23abd874ec Mon Sep 17 00:00:00 2001 From: Jimmy Kiselak Date: Thu, 17 Sep 2015 10:59:57 -0400 Subject: [PATCH] enable getting a new address via the console --- lbrynet/lbrynet_console/ControlHandlers.py | 17 +++++++++++++++++ lbrynet/lbrynet_console/LBRYConsole.py | 4 +++- 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/lbrynet/lbrynet_console/ControlHandlers.py b/lbrynet/lbrynet_console/ControlHandlers.py index 212295f59..659b44a50 100644 --- a/lbrynet/lbrynet_console/ControlHandlers.py +++ b/lbrynet/lbrynet_console/ControlHandlers.py @@ -178,6 +178,23 @@ class GetWalletBalancesFactory(ControlHandlerFactory): control_handler_class = GetWalletBalances +class GetNewWalletAddress(ControlHandler): + prompt_description = "Get a new LBRYcrd address" + + def __init__(self, wallet): + self.wallet = wallet + + def handle_line(self, line): + assert line is None, "Get new LBRYcrd address should not be passed any arguments" + d = self.wallet.get_new_address() + d.addCallback(lambda address: str(address)) + return True, d + + +class GetNewWalletAddressFactory(ControlHandlerFactory): + control_handler_class = GetNewWalletAddress + + class ShutDown(ControlHandler): prompt_description = "Shut down" diff --git a/lbrynet/lbrynet_console/LBRYConsole.py b/lbrynet/lbrynet_console/LBRYConsole.py index a0b28a98c..482eaf113 100644 --- a/lbrynet/lbrynet_console/LBRYConsole.py +++ b/lbrynet/lbrynet_console/LBRYConsole.py @@ -29,7 +29,7 @@ from lbrynet.lbrynet_console.ControlHandlers import ShowPublishedSDHashesChooser from lbrynet.lbrynet_console.ControlHandlers import CreatePlainStreamDescriptorChooserFactory from lbrynet.lbrynet_console.ControlHandlers import ShowLBRYFileStreamHashChooserFactory, AddStreamFromHashFactory from lbrynet.lbrynet_console.ControlHandlers import AddStreamFromSDFactory, AddStreamFromLBRYcrdNameFactory -from lbrynet.lbrynet_console.ControlHandlers import ClaimNameFactory +from lbrynet.lbrynet_console.ControlHandlers import ClaimNameFactory, GetNewWalletAddressFactory from lbrynet.lbrynet_console.ControlHandlers import ShowServerStatusFactory, ModifyServerSettingsFactory from lbrynet.lbrynet_console.ControlHandlers import ModifyLBRYFileOptionsChooserFactory from lbrynet.lbrynet_console.ControlHandlers import PeerStatsAndSettingsChooserFactory @@ -307,6 +307,8 @@ class LBRYConsole(): self.session.wallet)), ('General', ClaimNameFactory(self.session.wallet)), + ('General', + GetNewWalletAddressFactory(self.session.wallet)) ] self.add_control_handlers(lbrycrd_handlers) if self.peer_port is not None: