diff options
author | John Snow <jsnow@redhat.com> | 2021-06-07 16:06:29 -0400 |
---|---|---|
committer | John Snow <jsnow@redhat.com> | 2021-06-18 16:10:07 -0400 |
commit | ad4eebee00a52a6f0e9761ffd0fd0002c259bc21 (patch) | |
tree | cd295c24d10f3af1dc35a5fd25d9c0df0bbe8d4b /scripts | |
parent | 1215a1fbef205ba9930a976619163271d8195cdb (diff) | |
download | qemu-ad4eebee00a52a6f0e9761ffd0fd0002c259bc21.zip qemu-ad4eebee00a52a6f0e9761ffd0fd0002c259bc21.tar.gz qemu-ad4eebee00a52a6f0e9761ffd0fd0002c259bc21.tar.bz2 |
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>
Diffstat (limited to 'scripts')
-rwxr-xr-x | scripts/qmp/qmp-shell | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/scripts/qmp/qmp-shell b/scripts/qmp/qmp-shell index 3126985..aa14851 100755 --- a/scripts/qmp/qmp-shell +++ b/scripts/qmp/qmp-shell @@ -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__': |