[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 22/42] scripts/qmp-shell: move the REPL functionality into QMPShe
From: |
John Snow |
Subject: |
[PATCH 22/42] scripts/qmp-shell: move the REPL functionality into QMPShell |
Date: |
Mon, 7 Jun 2021 16:06:29 -0400 |
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>
---
scripts/qmp/qmp-shell | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git a/scripts/qmp/qmp-shell b/scripts/qmp/qmp-shell
index 31269859c4..aa148517a8 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__':
--
2.31.1
- [PATCH 27/42] scripts/qmp-shell: add mypy types, (continued)
- [PATCH 27/42] scripts/qmp-shell: add mypy types, John Snow, 2021/06/07
- [PATCH 24/42] scripts/qmp-shell: refactor QMPCompleter, John Snow, 2021/06/07
- [PATCH 16/42] scripts/qmp-shell: use isinstance() instead of type(), John Snow, 2021/06/07
- [PATCH 30/42] python/qmp: return generic type from context manager, John Snow, 2021/06/07
- [PATCH 33/42] scripts/qmp-shell: remove TODO, John Snow, 2021/06/07
- [PATCH 23/42] scripts/qmp-shell: Fix "FuzzyJSON" parser, John Snow, 2021/06/07
- [PATCH 35/42] scripts/qmp-shell: Remove too-broad-exception, John Snow, 2021/06/07
- [PATCH 26/42] python/qmp: add QMPObject type alias, John Snow, 2021/06/07
- [PATCH 13/42] scripts/qmp-shell: rename one and two-letter variables, John Snow, 2021/06/07
- [PATCH 28/42] scripts/qmp-shell: Accept SocketAddrT instead of string, John Snow, 2021/06/07
- [PATCH 22/42] scripts/qmp-shell: move the REPL functionality into QMPShell,
John Snow <=
- [PATCH 32/42] scripts/qmp-shell: use logging to show warnings, John Snow, 2021/06/07
- [PATCH 34/42] scripts/qmp-shell: Fix empty-transaction invocation, John Snow, 2021/06/07
- [PATCH 31/42] scripts/qmp-shell: Use context manager instead of atexit, John Snow, 2021/06/07
- [PATCH 17/42] scripts/qmp-shell: use argparse, John Snow, 2021/06/07
- [PATCH 36/42] scripts/qmp-shell: convert usage comment to docstring, John Snow, 2021/06/07
- [PATCH 37/42] scripts/qmp-shell: remove double-underscores, John Snow, 2021/06/07
- [PATCH 41/42] python: add qmp-shell entry point, John Snow, 2021/06/07
- [PATCH 38/42] scripts/qmp-shell: make QMPShellError inherit QMPError, John Snow, 2021/06/07
- [PATCH 39/42] scripts/qmp-shell: add docstrings, John Snow, 2021/06/07
- [PATCH 42/42] scripts/qmp-shell: add redirection shim, John Snow, 2021/06/07