src/server/webdav/saxhandler.h

changeset 30
27c7511c0e34
parent 29
e8619defde14
child 44
3da1f7b6847f
--- a/src/server/webdav/saxhandler.h	Wed May 16 12:47:28 2012 +0200
+++ b/src/server/webdav/saxhandler.h	Thu May 24 12:51:52 2012 +0200
@@ -35,6 +35,13 @@
 
 using namespace xercesc;
 
+/* stack */
+#define XSTACK_PUSH(elm) xstack_push(&xmlStack, elm)
+#define XSTACK_POP() xstack_pop(&xmlStack)
+#define XSTACK_CUR() (xmlStack) ? (XmlElement*)xmlStack->data : NULL;
+void xstack_push(UcxDlist **stack, XmlElement *elm);
+XmlElement* xstack_pop(UcxDlist **stack);
+
 class PropfindHandler : public DefaultHandler {
 public:
     PropfindHandler(PropfindRequest *rq, pool_handle_t *p);
@@ -91,10 +98,12 @@
     pool_handle_t    *pool;
 
     bool             davPropTag;
-    XmlElement       *rxprop; /* root of xml property */
-    XmlElement       *cxprop; /* current element */
-    DavProperty      *property;
-    int              updateMode; /* 0 = set, 1 = remove */
+    XmlElement       *rootElement;
+    XmlElement       *newElement; 
+    UcxDlist         *xmlStack;
+    
+    //DavProperty      *property;
+    int              updateMode; /* 0 = set, 1 = remove, -1 = undefined */
 };
 
 #endif	/* SAXHANDLER_H */

mercurial