提交 df328f93 编写于 作者: C Cédric Bosdonnat 提交者: Daniel P. Berrange

Renamed virDomainEventQueue to virObjectEventQueue

The event queue will be generalized to hold events related
to any object type.
上级 9db86c87
...@@ -40,13 +40,16 @@ struct _virObjectMeta { ...@@ -40,13 +40,16 @@ struct _virObjectMeta {
typedef struct _virObjectMeta virObjectMeta; typedef struct _virObjectMeta virObjectMeta;
typedef virObjectMeta *virObjectMetaPtr; typedef virObjectMeta *virObjectMetaPtr;
typedef struct _virObjectEventQueue virObjectEventQueue;
typedef virObjectEventQueue *virObjectEventQueuePtr;
struct _virDomainEventCallbackList { struct _virDomainEventCallbackList {
unsigned int nextID; unsigned int nextID;
unsigned int count; unsigned int count;
virObjectEventCallbackPtr *callbacks; virObjectEventCallbackPtr *callbacks;
}; };
struct _virDomainEventQueue { struct _virObjectEventQueue {
unsigned int count; unsigned int count;
virDomainEventPtr *events; virDomainEventPtr *events;
}; };
...@@ -54,8 +57,8 @@ struct _virDomainEventQueue { ...@@ -54,8 +57,8 @@ struct _virDomainEventQueue {
struct _virDomainEventState { struct _virDomainEventState {
/* The list of domain event callbacks */ /* The list of domain event callbacks */
virDomainEventCallbackListPtr callbacks; virDomainEventCallbackListPtr callbacks;
/* The queue of domain events */ /* The queue of object events */
virDomainEventQueuePtr queue; virObjectEventQueuePtr queue;
/* Timer for flushing events queue */ /* Timer for flushing events queue */
int timer; int timer;
/* Flag if we're in process of dispatching */ /* Flag if we're in process of dispatching */
...@@ -531,13 +534,13 @@ void virDomainEventFree(virDomainEventPtr event) ...@@ -531,13 +534,13 @@ void virDomainEventFree(virDomainEventPtr event)
} }
/** /**
* virDomainEventQueueClear: * virObjectEventQueueClear:
* @queue: pointer to the queue * @queue: pointer to the queue
* *
* Removes all elements from the queue * Removes all elements from the queue
*/ */
static void static void
virDomainEventQueueClear(virDomainEventQueuePtr queue) virObjectEventQueueClear(virObjectEventQueuePtr queue)
{ {
size_t i; size_t i;
if (!queue) if (!queue)
...@@ -551,25 +554,25 @@ virDomainEventQueueClear(virDomainEventQueuePtr queue) ...@@ -551,25 +554,25 @@ virDomainEventQueueClear(virDomainEventQueuePtr queue)
} }
/** /**
* virDomainEventQueueFree: * virObjectEventQueueFree:
* @queue: pointer to the queue * @queue: pointer to the queue
* *
* Free the memory in the queue. We process this like a list here * Free the memory in the queue. We process this like a list here
*/ */
static void static void
virDomainEventQueueFree(virDomainEventQueuePtr queue) virObjectEventQueueFree(virObjectEventQueuePtr queue)
{ {
if (!queue) if (!queue)
return; return;
virDomainEventQueueClear(queue); virObjectEventQueueClear(queue);
VIR_FREE(queue); VIR_FREE(queue);
} }
static virDomainEventQueuePtr static virObjectEventQueuePtr
virDomainEventQueueNew(void) virObjectEventQueueNew(void)
{ {
virDomainEventQueuePtr ret; virObjectEventQueuePtr ret;
ignore_value(VIR_ALLOC(ret)); ignore_value(VIR_ALLOC(ret));
return ret; return ret;
...@@ -600,7 +603,7 @@ virDomainEventStateFree(virDomainEventStatePtr state) ...@@ -600,7 +603,7 @@ virDomainEventStateFree(virDomainEventStatePtr state)
return; return;
virDomainEventCallbackListFree(state->callbacks); virDomainEventCallbackListFree(state->callbacks);
virDomainEventQueueFree(state->queue); virObjectEventQueueFree(state->queue);
if (state->timer != -1) if (state->timer != -1)
virEventRemoveTimeout(state->timer); virEventRemoveTimeout(state->timer);
...@@ -641,7 +644,7 @@ virDomainEventStateNew(void) ...@@ -641,7 +644,7 @@ virDomainEventStateNew(void)
if (VIR_ALLOC(state->callbacks) < 0) if (VIR_ALLOC(state->callbacks) < 0)
goto error; goto error;
if (!(state->queue = virDomainEventQueueNew())) if (!(state->queue = virObjectEventQueueNew()))
goto error; goto error;
state->timer = -1; state->timer = -1;
...@@ -1203,16 +1206,16 @@ virDomainEventDeviceRemovedNewFromDom(virDomainPtr dom, ...@@ -1203,16 +1206,16 @@ virDomainEventDeviceRemovedNewFromDom(virDomainPtr dom,
} }
/** /**
* virDomainEventQueuePush: * virObjectEventQueuePush:
* @evtQueue: the dom event queue * @evtQueue: the object event queue
* @event: the event to add * @event: the event to add
* *
* Internal function to push to the back of a virDomainEventQueue * Internal function to push to the back of a virObjectEventQueue
* *
* Returns: 0 on success, -1 on failure * Returns: 0 on success, -1 on failure
*/ */
static int static int
virDomainEventQueuePush(virDomainEventQueuePtr evtQueue, virObjectEventQueuePush(virObjectEventQueuePtr evtQueue,
virDomainEventPtr event) virDomainEventPtr event)
{ {
if (!evtQueue) { if (!evtQueue) {
...@@ -1418,7 +1421,7 @@ virDomainEventDispatch(virDomainEventPtr event, ...@@ -1418,7 +1421,7 @@ virDomainEventDispatch(virDomainEventPtr event,
static void static void
virDomainEventQueueDispatch(virDomainEventQueuePtr queue, virObjectEventQueueDispatch(virObjectEventQueuePtr queue,
virDomainEventCallbackListPtr callbacks, virDomainEventCallbackListPtr callbacks,
virDomainEventDispatchFunc dispatch, virDomainEventDispatchFunc dispatch,
void *opaque) void *opaque)
...@@ -1444,7 +1447,7 @@ virDomainEventStateQueue(virDomainEventStatePtr state, ...@@ -1444,7 +1447,7 @@ virDomainEventStateQueue(virDomainEventStatePtr state,
virDomainEventStateLock(state); virDomainEventStateLock(state);
if (virDomainEventQueuePush(state->queue, event) < 0) { if (virObjectEventQueuePush(state->queue, event) < 0) {
VIR_DEBUG("Error adding event to queue"); VIR_DEBUG("Error adding event to queue");
virDomainEventFree(event); virDomainEventFree(event);
} }
...@@ -1474,7 +1477,7 @@ virDomainEventStateDispatchFunc(virConnectPtr conn, ...@@ -1474,7 +1477,7 @@ virDomainEventStateDispatchFunc(virConnectPtr conn,
static void static void
virDomainEventStateFlush(virDomainEventStatePtr state) virDomainEventStateFlush(virDomainEventStatePtr state)
{ {
virDomainEventQueue tempQueue; virObjectEventQueue tempQueue;
virDomainEventStateLock(state); virDomainEventStateLock(state);
state->isDispatching = true; state->isDispatching = true;
...@@ -1487,7 +1490,7 @@ virDomainEventStateFlush(virDomainEventStatePtr state) ...@@ -1487,7 +1490,7 @@ virDomainEventStateFlush(virDomainEventStatePtr state)
state->queue->events = NULL; state->queue->events = NULL;
virEventUpdateTimeout(state->timer, -1); virEventUpdateTimeout(state->timer, -1);
virDomainEventQueueDispatch(&tempQueue, virObjectEventQueueDispatch(&tempQueue,
state->callbacks, state->callbacks,
virDomainEventStateDispatchFunc, virDomainEventStateDispatchFunc,
state); state);
...@@ -1637,7 +1640,7 @@ virDomainEventStateDeregister(virConnectPtr conn, ...@@ -1637,7 +1640,7 @@ virDomainEventStateDeregister(virConnectPtr conn,
state->timer != -1) { state->timer != -1) {
virEventRemoveTimeout(state->timer); virEventRemoveTimeout(state->timer);
state->timer = -1; state->timer = -1;
virDomainEventQueueClear(state->queue); virObjectEventQueueClear(state->queue);
} }
virDomainEventStateUnlock(state); virDomainEventStateUnlock(state);
...@@ -1675,7 +1678,7 @@ virDomainEventStateDeregisterID(virConnectPtr conn, ...@@ -1675,7 +1678,7 @@ virDomainEventStateDeregisterID(virConnectPtr conn,
state->timer != -1) { state->timer != -1) {
virEventRemoveTimeout(state->timer); virEventRemoveTimeout(state->timer);
state->timer = -1; state->timer = -1;
virDomainEventQueueClear(state->queue); virObjectEventQueueClear(state->queue);
} }
virDomainEventStateUnlock(state); virDomainEventStateUnlock(state);
......
...@@ -41,9 +41,6 @@ typedef virDomainEventCallbackList *virDomainEventCallbackListPtr; ...@@ -41,9 +41,6 @@ typedef virDomainEventCallbackList *virDomainEventCallbackListPtr;
typedef struct _virDomainEvent virDomainEvent; typedef struct _virDomainEvent virDomainEvent;
typedef virDomainEvent *virDomainEventPtr; typedef virDomainEvent *virDomainEventPtr;
typedef struct _virDomainEventQueue virDomainEventQueue;
typedef virDomainEventQueue *virDomainEventQueuePtr;
typedef struct _virDomainEventState virDomainEventState; typedef struct _virDomainEventState virDomainEventState;
typedef virDomainEventState *virDomainEventStatePtr; typedef virDomainEventState *virDomainEventStatePtr;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册