提交 8eb7ab95 编写于 作者: J Jiri Denemark

python: Implement virDomainGetJobStats wrapper

上级 4dd00f42
......@@ -84,6 +84,12 @@
<return type='int *' info='the list of information or None in case of error'/>
<arg name='domain' type='virDomainPtr' info='a domain object'/>
</function>
<function name='virDomainGetJobStats' file='python'>
<info>Extract information about an active job being processed for a domain.</info>
<return type='virDomainJobStats' info='dictionary mapping field names to values or None in case of error'/>
<arg name='domain' type='virDomainPtr' info='a domain object'/>
<arg name='flags' type='unsigned int' info='flags, currently unused, pass 0.'/>
</function>
<function name='virNodeGetInfo' file='python'>
<info>Extract hardware information about the Node.</info>
<return type='int *' info='the list of information or None in case of error'/>
......
......@@ -4182,6 +4182,47 @@ libvirt_virDomainGetJobInfo(PyObject *self ATTRIBUTE_UNUSED, PyObject *args) {
return py_retval;
}
static PyObject *
libvirt_virDomainGetJobStats(PyObject *self ATTRIBUTE_UNUSED, PyObject *args)
{
PyObject *pyobj_domain;
virDomainPtr domain;
unsigned int flags;
virTypedParameterPtr params = NULL;
int nparams = 0;
int type;
PyObject *dict = NULL;
int rc;
if (!PyArg_ParseTuple(args, (char *) "Oi:virDomainGetJobStats",
&pyobj_domain, &flags))
goto cleanup;
domain = (virDomainPtr) PyvirDomain_Get(pyobj_domain);
LIBVIRT_BEGIN_ALLOW_THREADS;
rc = virDomainGetJobStats(domain, &type, &params, &nparams, flags);
LIBVIRT_END_ALLOW_THREADS;
if (rc < 0)
goto cleanup;
if (!(dict = getPyVirTypedParameter(params, nparams)))
goto cleanup;
if (PyDict_SetItem(dict, libvirt_constcharPtrWrap("type"),
libvirt_intWrap(type)) < 0) {
Py_DECREF(dict);
dict = NULL;
goto cleanup;
}
cleanup:
virTypedParamsFree(params, nparams);
if (dict)
return dict;
else
return VIR_PY_NONE;
}
static PyObject *
libvirt_virDomainGetBlockJobInfo(PyObject *self ATTRIBUTE_UNUSED,
PyObject *args)
......@@ -6673,6 +6714,7 @@ static PyMethodDef libvirtMethods[] = {
{(char *) "virConnectListAllInterfaces", libvirt_virConnectListAllInterfaces, METH_VARARGS, NULL},
{(char *) "virConnectBaselineCPU", libvirt_virConnectBaselineCPU, METH_VARARGS, NULL},
{(char *) "virDomainGetJobInfo", libvirt_virDomainGetJobInfo, METH_VARARGS, NULL},
{(char *) "virDomainGetJobStats", libvirt_virDomainGetJobStats, METH_VARARGS, NULL},
{(char *) "virDomainSnapshotListNames", libvirt_virDomainSnapshotListNames, METH_VARARGS, NULL},
{(char *) "virDomainListAllSnapshots", libvirt_virDomainListAllSnapshots, METH_VARARGS, NULL},
{(char *) "virDomainSnapshotListChildrenNames", libvirt_virDomainSnapshotListChildrenNames, METH_VARARGS, NULL},
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册