diff options
author | deva <deva> | 2007-09-03 14:51:37 +0000 |
---|---|---|
committer | deva <deva> | 2007-09-03 14:51:37 +0000 |
commit | 20c7a5d63dc1f68fcf0e1aa053a4b725235e6f78 (patch) | |
tree | 43fb3b46f1e7bfbf2e3a098535365fbcd4154d23 /server/src/xmlparser.cc | |
parent | 41e5a068b0b595be86797fd12035dabb87c21f36 (diff) |
Added some XML parsing => DOM (pracro, requests and commits).
Diffstat (limited to 'server/src/xmlparser.cc')
-rw-r--r-- | server/src/xmlparser.cc | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/server/src/xmlparser.cc b/server/src/xmlparser.cc index 7e5fb14..7efdc83 100644 --- a/server/src/xmlparser.cc +++ b/server/src/xmlparser.cc @@ -62,13 +62,32 @@ void start_hndl(void *p, const char *el, const char **attr) */ // Do something reasonable with them... + if(name == "pracro") { + transaction->cpr = attributes["cpr"]; + transaction->version = attributes["version"]; + } + if(name == "request") { Request r; r.macro = attributes["macro"]; - // printf("%s\n", r.macro.c_str()); transaction->requests.push_back(r); } + if(name == "commit") { + Commit c; + c.user = attributes["user"]; + c.macro = attributes["macro"]; + c.version = attributes["version"]; + transaction->commits.push_back(c); + } + + if(name == "field") { + CommitValue v; + v.name = attributes["name"]; + v.value = attributes["value"]; + transaction->commits.back().values.push_back(v); + } + } void end_hndl(void *p, const char *el) |