vswitch: Generate text file documenting the vswitch schema.
[openvswitch] / ovsdb / column.c
index 1e8a2d09d6b75cde68ab00935fac4190bb6f3996..dc93dc71b7fdcb9b6bdf187c15b8b6480ea8e165 100644 (file)
@@ -31,16 +31,16 @@ ovsdb_column_create(const char *name, const char *comment,
                     bool mutable, bool persistent,
                     const struct ovsdb_type *type)
 {
-    struct ovsdb_column *ts;
+    struct ovsdb_column *column;
 
-    ts = xzalloc(sizeof *ts);
-    ts->name = xstrdup(name);
-    ts->comment = comment ? xstrdup(comment) : NULL;
-    ts->mutable = mutable;
-    ts->persistent = persistent;
-    ts->type = *type;
+    column = xzalloc(sizeof *column);
+    column->name = xstrdup(name);
+    column->comment = comment ? xstrdup(comment) : NULL;
+    column->mutable = mutable;
+    column->persistent = persistent;
+    column->type = *type;
 
-    return ts;
+    return column;
 }
 
 void
@@ -174,6 +174,19 @@ error:
                               "array of distinct column names expected");
 }
 
+struct json *
+ovsdb_column_set_to_json(const struct ovsdb_column_set *set)
+{
+    struct json *json;
+    size_t i;
+
+    json = json_array_create_empty();
+    for (i = 0; i < set->n_columns; i++) {
+        json_array_add(json, json_string_create(set->columns[i]->name));
+    }
+    return json;
+}
+
 void
 ovsdb_column_set_add(struct ovsdb_column_set *set,
                      const struct ovsdb_column *column)