mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-02-02 01:45:17 +00:00
qemu: monitor: Remove old code for dual handling of 'transaction' data
Now that we use only the separate function for creating data for the 'transaction' command we can remove all the boilerplate which was necessary before. Signed-off-by: Peter Krempa <pkrempa@redhat.com> Reviewed-by: Ján Tomko <jtomko@redhat.com>
This commit is contained in:
parent
42f3bbb15e
commit
2f259d598a
@ -515,48 +515,30 @@ qemuMonitorJSONTransactionAdd(virJSONValuePtr actions,
|
||||
* qemuMonitorJSONMakeCommandInternal:
|
||||
* @cmdname: QMP command name
|
||||
* @arguments: a JSON object containing command arguments or NULL
|
||||
* @transaction: format the command as arguments for the 'transaction' command
|
||||
*
|
||||
* Create a JSON object used on the QMP monitor to call a command. If
|
||||
* @transaction is true, the returned object is formatted to be used as a member
|
||||
* of the 'transaction' command.
|
||||
* Create a JSON object used on the QMP monitor to call a command.
|
||||
*
|
||||
* Note that @arguments is always consumed and should not be referenced after
|
||||
* the call to this function.
|
||||
*/
|
||||
static virJSONValuePtr
|
||||
qemuMonitorJSONMakeCommandInternal(const char *cmdname,
|
||||
virJSONValuePtr arguments,
|
||||
bool transaction)
|
||||
virJSONValuePtr arguments)
|
||||
{
|
||||
virJSONValuePtr cmd = NULL;
|
||||
virJSONValuePtr ret = NULL;
|
||||
|
||||
if (!transaction) {
|
||||
if (virJSONValueObjectCreate(&cmd,
|
||||
"s:execute", cmdname,
|
||||
"A:arguments", &arguments, NULL) < 0)
|
||||
goto cleanup;
|
||||
} else {
|
||||
if (virJSONValueObjectCreate(&cmd,
|
||||
"s:type", cmdname,
|
||||
"A:data", &arguments, NULL) < 0)
|
||||
goto cleanup;
|
||||
}
|
||||
ignore_value(virJSONValueObjectCreate(&ret,
|
||||
"s:execute", cmdname,
|
||||
"A:arguments", &arguments, NULL));
|
||||
|
||||
VIR_STEAL_PTR(ret, cmd);
|
||||
|
||||
cleanup:
|
||||
virJSONValueFree(arguments);
|
||||
virJSONValueFree(cmd);
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
static virJSONValuePtr ATTRIBUTE_SENTINEL
|
||||
qemuMonitorJSONMakeCommandRaw(bool transaction,
|
||||
const char *cmdname,
|
||||
...)
|
||||
qemuMonitorJSONMakeCommand(const char *cmdname,
|
||||
...)
|
||||
{
|
||||
virJSONValuePtr obj = NULL;
|
||||
virJSONValuePtr jargs = NULL;
|
||||
@ -567,7 +549,7 @@ qemuMonitorJSONMakeCommandRaw(bool transaction,
|
||||
if (virJSONValueObjectCreateVArgs(&jargs, args) < 0)
|
||||
goto cleanup;
|
||||
|
||||
obj = qemuMonitorJSONMakeCommandInternal(cmdname, jargs, transaction);
|
||||
obj = qemuMonitorJSONMakeCommandInternal(cmdname, jargs);
|
||||
|
||||
cleanup:
|
||||
va_end(args);
|
||||
@ -575,9 +557,6 @@ qemuMonitorJSONMakeCommandRaw(bool transaction,
|
||||
return obj;
|
||||
}
|
||||
|
||||
#define qemuMonitorJSONMakeCommand(cmdname, ...) \
|
||||
qemuMonitorJSONMakeCommandRaw(false, cmdname, __VA_ARGS__)
|
||||
|
||||
|
||||
static virJSONValuePtr
|
||||
qemuMonitorJSONKeywordStringToJSON(const char *str, const char *firstkeyword)
|
||||
@ -4068,7 +4047,7 @@ qemuMonitorJSONAddObject(qemuMonitorPtr mon,
|
||||
virJSONValuePtr cmd;
|
||||
virJSONValuePtr reply = NULL;
|
||||
|
||||
if (!(cmd = qemuMonitorJSONMakeCommandInternal("object-add", props, false)))
|
||||
if (!(cmd = qemuMonitorJSONMakeCommandInternal("object-add", props)))
|
||||
goto cleanup;
|
||||
|
||||
if (qemuMonitorJSONCommand(mon, cmd, &reply) < 0)
|
||||
@ -7975,8 +7954,7 @@ qemuMonitorJSONBlockdevAdd(qemuMonitorPtr mon,
|
||||
virJSONValuePtr reply = NULL;
|
||||
int ret = -1;
|
||||
|
||||
if (!(cmd = qemuMonitorJSONMakeCommandInternal("blockdev-add",
|
||||
props, false)))
|
||||
if (!(cmd = qemuMonitorJSONMakeCommandInternal("blockdev-add", props)))
|
||||
return -1;
|
||||
|
||||
if (qemuMonitorJSONCommand(mon, cmd, &reply) < 0)
|
||||
|
Loading…
x
Reference in New Issue
Block a user