src/server/webdav/multistatus.h

branch
webdav
changeset 237
ee1680ef1ef2
parent 231
4714468b9b7e
child 239
d5031c30022c
equal deleted inserted replaced
236:e81d3e517b57 237:ee1680ef1ef2
69 */ 69 */
70 struct MSResponse { 70 struct MSResponse {
71 WebdavResource resource; 71 WebdavResource resource;
72 Multistatus *multistatus; 72 Multistatus *multistatus;
73 73
74 /*
75 * Contains all properties that were added to the response
76 * key: <href> null-byte <name>
77 * value: WebdavProperty*
78 */
74 UcxMap *properties; 79 UcxMap *properties;
75 80
81 /*
82 * All properties with status != 200
83 */
76 PropertyErrorList *errors; 84 PropertyErrorList *errors;
77 85
86 /*
87 * All properties with status == 200
88 */
78 PropertyOkList *plist_begin; 89 PropertyOkList *plist_begin;
79 PropertyOkList *plist_end; 90 PropertyOkList *plist_end;
80 91
81 MSResponse *next; 92 MSResponse *next;
82 WSBool closing; 93 WSBool closing;
83 }; 94 };
84 95
85 struct PropertyOkList { 96 struct PropertyOkList {
86 WebdavProperty *property; 97 WebdavProperty *property;
87 WebdavNSList *nsdef; 98 WebdavNSList *nsdef;
88 PropertyOkList *next; 99 PropertyOkList *next;
89 }; 100 };
90 101
91 struct PropertyErrorList { 102 struct PropertyErrorList {
103 /*
104 * next list for different status code
105 */
92 PropertyErrorList *next; 106 PropertyErrorList *next;
107
108 /*
109 * property list for all properties with this status code
110 */
93 WebdavPList *begin; 111 WebdavPList *begin;
112
113 /*
114 * tail of the property list
115 */
94 WebdavPList *end; 116 WebdavPList *end;
117
118 /*
119 * property response status code
120 */
95 int status; 121 int status;
96 }; 122 };
97 123
98 Multistatus* multistatus_response(Session *sn, Request *rq); 124 Multistatus* multistatus_response(Session *sn, Request *rq);
99 125

mercurial