Browse Source

qapi: Make 'allow-oob' optional in SchemaInfoCommand

Making 'allow-oob' optional in SchemaInfoCommand permits omitting it
in the common case.  Shrinks query-qmp-schema's output from 122.1KiB
to 118.6KiB for me.

Note that out-of-band execution is still experimental (you have to
configure the monitor with x-oob=on to use it).

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Message-Id: <20180718090557.17248-1-armbru@redhat.com>
Reviewed-by: Peter Xu <peterx@redhat.com>
pull/70/merge
Markus Armbruster 8 years ago
parent
commit
25b1ef31db
  1. 6
      qapi/introspect.json
  2. 10
      scripts/qapi/introspect.py

6
qapi/introspect.json

@ -259,8 +259,8 @@
#
# @ret-type: the name of the command's result type.
#
# @allow-oob: whether the command allows out-of-band execution.
# (Since: 2.12)
# @allow-oob: whether the command allows out-of-band execution,
# defaults to false (Since: 2.12)
#
# TODO: @success-response (currently irrelevant, because it's QGA, not QMP)
#
@ -268,7 +268,7 @@
##
{ 'struct': 'SchemaInfoCommand',
'data': { 'arg-type': 'str', 'ret-type': 'str',
'allow-oob': 'bool' } }
'*allow-oob': 'bool' } }
##
# @SchemaInfoEvent:

10
scripts/qapi/introspect.py

@ -184,11 +184,11 @@ const QLitObject %(c_name)s = %(c_string)s;
success_response, boxed, allow_oob, allow_preconfig):
arg_type = arg_type or self._schema.the_empty_object_type
ret_type = ret_type or self._schema.the_empty_object_type
self._gen_qlit(name, 'command',
{'arg-type': self._use_type(arg_type),
'ret-type': self._use_type(ret_type),
'allow-oob': allow_oob},
ifcond)
obj = {'arg-type': self._use_type(arg_type),
'ret-type': self._use_type(ret_type) }
if allow_oob:
obj['allow-oob'] = allow_oob
self._gen_qlit(name, 'command', obj, ifcond)
def visit_event(self, name, info, ifcond, arg_type, boxed):
arg_type = arg_type or self._schema.the_empty_object_type

Loading…
Cancel
Save