X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=ovsdb%2Ftransaction.h;h=edc91185f44f9b702b09ed77af1a0ab67b392e5b;hb=c5cf10598f8c9f4428291e9df3ecd72a05fb1ccf;hp=293eaf4ffe4c7922afaf14254e936a6556a0a0a0;hpb=f85f8ebbfac946c19b3c6eb0f4170f579d0a4d25;p=sliver-openvswitch.git diff --git a/ovsdb/transaction.h b/ovsdb/transaction.h index 293eaf4ff..edc91185f 100644 --- a/ovsdb/transaction.h +++ b/ovsdb/transaction.h @@ -1,4 +1,4 @@ -/* Copyright (c) 2009 Nicira Networks +/* Copyright (c) 2009, 2010 Nicira, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -19,23 +19,29 @@ #include #include "compiler.h" +struct json; struct ovsdb; struct ovsdb_table; struct uuid; struct ovsdb_txn *ovsdb_txn_create(struct ovsdb *); void ovsdb_txn_abort(struct ovsdb_txn *); -void ovsdb_txn_commit(struct ovsdb_txn *); - -struct json *ovsdb_txn_to_json(const struct ovsdb_txn *); -struct ovsdb_error *ovsdb_txn_from_json(struct ovsdb *, const struct json *, - struct ovsdb_txn **) +struct ovsdb_error *ovsdb_txn_commit(struct ovsdb_txn *, bool durable) WARN_UNUSED_RESULT; struct ovsdb_row *ovsdb_txn_row_modify(struct ovsdb_txn *, const struct ovsdb_row *); - void ovsdb_txn_row_insert(struct ovsdb_txn *, struct ovsdb_row *); void ovsdb_txn_row_delete(struct ovsdb_txn *, const struct ovsdb_row *); +typedef bool ovsdb_txn_row_cb_func(const struct ovsdb_row *old, + const struct ovsdb_row *new, + const unsigned long int *changed, + void *aux); +void ovsdb_txn_for_each_change(const struct ovsdb_txn *, + ovsdb_txn_row_cb_func *, void *aux); + +void ovsdb_txn_add_comment(struct ovsdb_txn *, const char *); +const char *ovsdb_txn_get_comment(const struct ovsdb_txn *); + #endif /* ovsdb/transaction.h */