scripts/qmp-shell: move the REPL functionality into QMPShell
Instead of doing this in main, move it into the class itself. (This makes it easier to put into the qemu.qmp package later by removing as much as we can from the main() function.) Signed-off-by: John Snow <jsnow@redhat.com> Message-id: 20210607200649.1840382-23-jsnow@redhat.com Signed-off-by: John Snow <jsnow@redhat.com>
This commit is contained in:
parent
1215a1fbef
commit
ad4eebee00
@ -318,6 +318,12 @@ class QMPShell(qmp.QEMUMonitorProtocol):
|
||||
|
||||
return self._execute_cmd(cmdline)
|
||||
|
||||
def repl(self):
|
||||
self.show_banner()
|
||||
while self.read_exec_command():
|
||||
yield
|
||||
self.close()
|
||||
|
||||
|
||||
class HMPShell(QMPShell):
|
||||
def __init__(self, address, pretty=False, verbose=False):
|
||||
@ -435,10 +441,8 @@ def main():
|
||||
except OSError as err:
|
||||
die(f"Couldn't connect to {args.qmp_server}: {err!s}")
|
||||
|
||||
qemu.show_banner()
|
||||
while qemu.read_exec_command():
|
||||
for _ in qemu.repl():
|
||||
pass
|
||||
qemu.close()
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
|
Loading…
Reference in New Issue
Block a user