It makes sense to move this to other hypervisor-based functions
into the private job callback structure to make begin job
general.
Signed-off-by: Kristina Hanicova <khanicov@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
Signed-off-by: Ján Tomko <jtomko@redhat.com>
typedef int (*virDomainObjPrivateJobParse)(xmlXPathContextPtr,
virDomainJobObj *,
virDomainObj *);
+typedef void (*virDomainObjPrivateSaveStatus)(virDomainObj *obj);
struct _virDomainObjPrivateJobCallbacks {
virDomainObjPrivateJobAlloc allocJobPrivate;
virDomainObjPrivateJobReset resetJobPrivate;
virDomainObjPrivateJobFormat formatJobPrivate;
virDomainObjPrivateJobParse parseJobPrivate;
+ virDomainObjPrivateSaveStatus saveStatusPrivate;
};
.resetJobPrivate = qemuJobResetPrivate,
.formatJobPrivate = qemuDomainFormatJobPrivate,
.parseJobPrivate = qemuDomainParseJobPrivate,
+ .saveStatusPrivate = qemuDomainSaveStatus,
};
/**
priv->job.agentStarted = now;
}
- if (virDomainTrackJob(job))
- qemuDomainSaveStatus(obj);
+ if (virDomainTrackJob(job) && priv->job.cb)
+ priv->job.cb->saveStatusPrivate(obj);
return 0;