mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-02 23:33:54 -06:00
Add 'query-events' command to QMP to query async events
Sometimes it is neccessary for an application to determine whether a particular QMP event is available, so they can decide whether to use compatibility code instead. This introduces a new 'query-events' command to QMP to do just that { "execute": "query-events" } {"return": [{"name": "WAKEUP"}, {"name": "SUSPEND"}, {"name": "DEVICE_TRAY_MOVED"}, {"name": "BLOCK_JOB_CANCELLED"}, {"name": "BLOCK_JOB_COMPLETED"}, ...snip... {"name": "SHUTDOWN"}]} * monitor.c: Turn MonitorEvent -> string conversion into a lookup from a static table of constant strings. Add impl of qmp_query_events monitor command handler * qapi-schema.json, qmp-commands.hx: Define contract of query-events command Signed-off-by: Daniel P. Berrange <berrange@redhat.com> Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
This commit is contained in:
parent
5f96415527
commit
4860853d60
4 changed files with 108 additions and 62 deletions
|
@ -1208,6 +1208,43 @@ EQMP
|
|||
.mhandler.cmd_new = qmp_marshal_input_query_commands,
|
||||
},
|
||||
|
||||
SQMP
|
||||
query-events
|
||||
--------------
|
||||
|
||||
List QMP available events.
|
||||
|
||||
Each event is represented by a json-object, the returned value is a json-array
|
||||
of all events.
|
||||
|
||||
Each json-object contains:
|
||||
|
||||
- "name": event's name (json-string)
|
||||
|
||||
Example:
|
||||
|
||||
-> { "execute": "query-events" }
|
||||
<- {
|
||||
"return":[
|
||||
{
|
||||
"name":"SHUTDOWN"
|
||||
},
|
||||
{
|
||||
"name":"RESET"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
Note: This example has been shortened as the real response is too long.
|
||||
|
||||
EQMP
|
||||
|
||||
{
|
||||
.name = "query-events",
|
||||
.args_type = "",
|
||||
.mhandler.cmd_new = qmp_marshal_input_query_events,
|
||||
},
|
||||
|
||||
SQMP
|
||||
query-chardev
|
||||
-------------
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue