diff options
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)  | 
