* Optimized validation by making xml_diff work on raw cache tree (not copies)
* xmldb_get() removed unnecessary config option
This commit is contained in:
parent
4fbec973d7
commit
e29cd7cfb9
57 changed files with 1044 additions and 263 deletions
|
|
@ -48,7 +48,9 @@ int xmldb_db2file(clicon_handle h, const char *db, char **filename);
|
|||
int xmldb_validate_db(const char *db);
|
||||
int xmldb_connect(clicon_handle h);
|
||||
int xmldb_disconnect(clicon_handle h);
|
||||
int xmldb_get(clicon_handle h, const char *db, char *xpath, int config, cxobj **xtop, modstate_diff_t *msd);
|
||||
int xmldb_get(clicon_handle h, const char *db, char *xpath, cxobj **xtop, modstate_diff_t *msd); /* in clixon_datastore_read.[ch] */
|
||||
int xmldb_get1(clicon_handle h, const char *db, char *xpath, cxobj **xtop, modstate_diff_t *msd); /* in clixon_datastore_read.[ch] */
|
||||
int xmldb_get1_clear(clicon_handle h, const char *db);
|
||||
int xmldb_put(clicon_handle h, const char *db, enum operation_type op, cxobj *xt, char *username, cbuf *cbret); /* in clixon_datastore_write.[ch] */
|
||||
int xmldb_copy(clicon_handle h, const char *from, const char *to);
|
||||
int xmldb_lock(clicon_handle h, const char *db, int pid);
|
||||
|
|
|
|||
|
|
@ -85,6 +85,7 @@ typedef int (xml_applyfn_t)(cxobj *x, void *arg);
|
|||
#define XML_FLAG_DEL 0x04 /* Node is deleted (commits) or parent deleted rec */
|
||||
#define XML_FLAG_CHANGE 0x08 /* Node is changed (commits) or child changed rec */
|
||||
#define XML_FLAG_NONE 0x10 /* Node is added as NONE */
|
||||
#define XML_FLAG_DEFAULT 0x20 /* Added as default value @see xml_default*/
|
||||
|
||||
/*
|
||||
* Prototypes
|
||||
|
|
@ -137,6 +138,7 @@ int xml_rootchild(cxobj *xp, int i, cxobj **xcp);
|
|||
int xml_rootchild_node(cxobj *xp, cxobj *xc);
|
||||
|
||||
int xml_enumerate_children(cxobj *xp);
|
||||
int xml_enumerate_reset(cxobj *xp);
|
||||
int xml_enumerate_get(cxobj *x);
|
||||
|
||||
char *xml_body(cxobj *xn);
|
||||
|
|
|
|||
|
|
@ -51,10 +51,10 @@ int xml_yang_validate_all(cxobj *xt, cbuf *cbret);
|
|||
int xml_yang_validate_all_top(cxobj *xt, cbuf *cbret);
|
||||
int xml2cvec(cxobj *xt, yang_stmt *ys, cvec **cvv0);
|
||||
int cvec2xml_1(cvec *cvv, char *toptag, cxobj *xp, cxobj **xt0);
|
||||
int xml_diff(yang_stmt *yspec, cxobj *xt1, cxobj *xt2,
|
||||
int xml_diff(yang_stmt *yspec, cxobj *x0, cxobj *x1,
|
||||
cxobj ***first, size_t *firstlen,
|
||||
cxobj ***second, size_t *secondlen,
|
||||
cxobj ***changed1, cxobj ***changed2, size_t *changedlen);
|
||||
cxobj ***changed_x0, cxobj ***changed_x1, size_t *changedlen);
|
||||
int yang2api_path_fmt(yang_stmt *ys, int inclkey, char **api_path_fmt);
|
||||
int api_path_fmt2api_path(char *api_path_fmt, cvec *cvv, char **api_path);
|
||||
int api_path_fmt2xpath(char *api_path_fmt, cvec *cvv, char **xpath);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue