Code Repositories xandikos / dd9bd08
Add add-member property. Jelmer Vernooń≥ 3 years ago
4 changed file(s) with 21 addition(s) and 5 deletion(s). Raw diff Collapse all Expand all
1515 - RFC5397 (Current Principal) - *fully implemented*
1616 - RFC3253 (Versioning Extensions) - *partially implemented, only the REPORT method and {DAV:}expand-property property*
1717 - RFC3744 (Access Control) - *partially implemented*
18 - RFC5995 (POST to create members) - *partially implemented, lacks support for the {DAV:}add-member property*
18 - RFC5995 (POST to create members) - *fully implemented*
1919 - RFC7809 (CalDAV Time Zone Extensions) - *not implemented*
2020
2121 See [[notes/dav-compliance.md]] for more detail on specification compliancy.
195195
196196 # rfc5995.txt (POST to create members)
197197
198 Partially supported.
199
200 ## DAV Properties
201 - DAV:add-member [not supported]
198 Fully supported.
199
200 ## DAV Properties
201 - DAV:add-member [supported]
202202
203203 ## HTTP Methods
204204 - POST [supported]
532532 scheduling.CalendarUserTypeProperty(),
533533 webdav.GetLastModifiedProperty(),
534534 timezones.TimezoneServiceSetProperty([]),
535 webdav.AddMemberProperty(),
535536 ])
536537 self.register_reporters([
537538 caldav.CalendarMultiGetReporter(),
237237
238238 def get_value(self, href, resource, el):
239239 el.text = resource.get_etag()
240
241
242 class AddMemberProperty(Property):
243 """Provides {DAV:}add-member.
244
245 https://tools.ietf.org/html/rfc5995, section 3.2.1
246 """
247
248 name = '{DAV:}add-member'
249 resource_type = COLLECTION_RESOURCE_TYPE
250 live = True
251
252 def get_value(self, href, resource, el):
253 # Support POST against collection URL
254 el.text = create_href('.', href)
240255
241256
242257 class GetLastModifiedProperty(Property):