From: Eric Blake <eblake@redhat.com>
To: Wenchao Xia <xiawenc@linux.vnet.ibm.com>,
Paolo Bonzini <pbonzini@redhat.com>
Cc: kwolf@redhat.com, lcapitulino@redhat.com, qemu-devel@nongnu.org,
stefanha@redhat.com, armbru@redhat.com
Subject: Re: [Qemu-devel] [PATCH 3/6] qapi: rename prefix QEVENT to Q_EVENT
Date: Tue, 29 Oct 2013 10:09:40 -0600 [thread overview]
Message-ID: <526FDDC4.9010803@redhat.com> (raw)
In-Reply-To: <526F4631.50706@linux.vnet.ibm.com>
[-- Attachment #1: Type: text/plain, Size: 1893 bytes --]
On 10/28/2013 11:22 PM, Wenchao Xia wrote:
>>
> MONITOR_EVENT seems tide to monitor too much, since it will be present
> in qapi-schema, I think Q_EVENT_ or QMP_EVENT_KIND would be better?
I don't have a strong enough opinion on the bikeshed color.
MONITOR_EVENT implies the event is always associated with delivery over
a monitor; but how else would you receive an event without a monitor?
>
> I am coding v2, which fully support event define in qapi-schema. There
> is another thing I hope to know your opinion:
> Should we support use enum as discriminator?
>
> { 'enum': 'QEvent',
> 'data': [ 'SHUTDOWN', 'POWERDOWN']
>
> { 'type': 'QmpEventBase',
> 'data': { 'event': 'QEvent', 'timestamp': 'EventTimestamp' } }
>
> { 'Union': 'QmpEvent',
> 'base': 'QmpEventBase',
> 'discriminator': 'event',
I raised that question when Kevin first added discriminated unions; if I
recall, the answer was along the lines: "yes, it would be a nice
addition, but someone would have to code it, and we'd have to teach the
generator.py to loudly fail if all branches of the enum are not covered
in the union's data". So go for it!
> 'data': {
> 'SHUTDOWN' : 'EventShutdown',
> 'POWERDOWN' : 'EventPowerdown'
> }
> }
>
> By default 'QmpEvent' will generate a hidden enum type 'QmpEventKind'.
> but the hidden type define is needed by query-event, so there is two way
> to archieve it:
> 1 just use the hidden type in qapi-schema.json.
> 2 modified the script to support use predefined enum type.
> In my draft code, both can work, but which one do you prefer?
I'd like to see the addition of an enum-typed discriminator, rather than
forcing the discriminator to be string-only.
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 621 bytes --]
next prev parent reply other threads:[~2013-10-29 16:09 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-10-21 2:15 [Qemu-devel] [PATCH 0/6] qapi: generate event defines automatically Wenchao Xia
2013-10-21 2:16 ` [Qemu-devel] [PATCH 1/6] block: use type MonitorEvent directly Wenchao Xia
2013-10-21 2:16 ` [Qemu-devel] [PATCH 2/6] qapi: rename MonitorEvent to QEvent Wenchao Xia
2013-10-21 20:38 ` Eric Blake
2013-11-01 14:02 ` Luiz Capitulino
2013-11-01 14:21 ` [Qemu-devel] [libvirt] QEMU 1.6 and drive discard parameter Gareth Bult
2013-11-04 1:59 ` [Qemu-devel] [PATCH 2/6] qapi: rename MonitorEvent to QEvent Wenchao Xia
2013-11-04 13:33 ` Luiz Capitulino
2013-11-05 2:17 ` Wenchao Xia
2013-11-05 2:51 ` Luiz Capitulino
2013-11-05 5:31 ` Wenchao Xia
2013-11-05 14:06 ` Luiz Capitulino
2013-11-06 3:25 ` Wenchao Xia
2013-10-21 2:16 ` [Qemu-devel] [PATCH 3/6] qapi: rename prefix QEVENT to Q_EVENT Wenchao Xia
2013-10-21 20:41 ` Eric Blake
2013-10-22 2:43 ` Wenchao Xia
2013-10-28 10:44 ` Paolo Bonzini
2013-10-29 5:22 ` Wenchao Xia
2013-10-29 16:09 ` Eric Blake [this message]
2013-10-30 7:26 ` Wenchao Xia
2013-11-01 14:06 ` Luiz Capitulino
2013-10-29 18:18 ` Kevin Wolf
2013-10-30 7:27 ` Wenchao Xia
2013-10-30 11:55 ` Paolo Bonzini
2013-10-31 5:26 ` Wenchao Xia
2013-10-21 2:16 ` [Qemu-devel] [PATCH 4/6] qapi: move event defines to qapi-schema.json Wenchao Xia
2013-10-21 20:45 ` Eric Blake
2013-10-21 2:16 ` [Qemu-devel] [PATCH 5/6] qapi: remove var monitor_event_names[] Wenchao Xia
2013-10-21 20:47 ` Eric Blake
2013-10-21 2:16 ` [Qemu-devel] [PATCH 6/6] qapi: add doc for QEvent Wenchao Xia
2013-10-21 21:00 ` Eric Blake
2013-10-22 3:19 ` Wenchao Xia
2013-10-22 3:46 ` Eric Blake
2013-10-23 0:37 ` Wenchao Xia
2013-10-29 23:02 ` Eric Blake
2013-10-30 7:51 ` Wenchao Xia
2013-10-22 6:55 ` Wenchao Xia
2013-10-22 7:33 ` Wenchao Xia
2013-10-22 8:58 ` Eric Blake
2013-10-25 9:16 ` [Qemu-devel] [PATCH 0/6] qapi: generate event defines automatically Wenchao Xia
2013-11-01 14:28 ` Luiz Capitulino
2013-11-04 1:54 ` Wenchao Xia
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=526FDDC4.9010803@redhat.com \
--to=eblake@redhat.com \
--cc=armbru@redhat.com \
--cc=kwolf@redhat.com \
--cc=lcapitulino@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@redhat.com \
--cc=xiawenc@linux.vnet.ibm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).