#include "bitmap.h"
#include "column.h"
#include "dynamic-string.h"
+#include "monitor.h"
#include "json.h"
#include "jsonrpc.h"
#include "ovsdb-error.h"
const struct json *request_id)
{
struct ovsdb_jsonrpc_monitor *m = NULL;
+ struct ovsdb_monitor *dbmon = NULL;
struct json *monitor_id, *monitor_requests;
struct ovsdb_error *error = NULL;
struct shash_node *node;
}
}
+ dbmon = ovsdb_monitor_add(m->dbmon);
+ if (dbmon != m->dbmon) {
+ /* Found an exisiting dbmon, reuse the current one. */
+ ovsdb_monitor_remove_jsonrpc_monitor(m->dbmon, m);
+ ovsdb_monitor_add_jsonrpc_monitor(dbmon, m);
+ m->dbmon = dbmon;
+ }
+
ovsdb_monitor_get_initial(m->dbmon);
json = ovsdb_jsonrpc_monitor_compose_update(m, true);
json = json ? json : json_object_create();
ovsdb_jsonrpc_monitor_compose_update(struct ovsdb_jsonrpc_monitor *m,
bool initial)
{
- return ovsdb_monitor_compose_update(m->dbmon, initial, &m->unflushed);
+ return ovsdb_monitor_get_update(m->dbmon, initial, &m->unflushed,
+ OVSDB_MONITOR_V1);
}
static bool