[1478] CalendarServer/trunk/twistedcaldav/schedule.py
Revision: 1478 http://trac.macosforge.org/projects/calendarserver/changeset/1478 Author: cdaboo@apple.com Date: 2007-04-11 19:51:59 -0700 (Wed, 11 Apr 2007) Log Message: ----------- Make sure calendar-free-busy-set is a live property. Modified Paths: -------------- CalendarServer/trunk/twistedcaldav/schedule.py Modified: CalendarServer/trunk/twistedcaldav/schedule.py =================================================================== --- CalendarServer/trunk/twistedcaldav/schedule.py 2007-04-12 02:48:40 UTC (rev 1477) +++ CalendarServer/trunk/twistedcaldav/schedule.py 2007-04-12 02:51:59 UTC (rev 1478) @@ -26,7 +26,7 @@ ] from twisted.internet import reactor -from twisted.internet.defer import deferredGenerator, maybeDeferred, waitForDeferred +from twisted.internet.defer import deferredGenerator, maybeDeferred, succeed, waitForDeferred from twisted.python import log from twisted.python.failure import Failure from twisted.web2 import responsecode @@ -91,6 +91,11 @@ Extends L{DAVResource} to provide CalDAV functionality. """ + + liveProperties = CalendarSchedulingCollectionResource.liveProperties + ( + (caldav_namespace, "calendar-free-busy-set"), + ) + def resourceType(self): return davxml.ResourceType.scheduleInbox @@ -105,6 +110,19 @@ ), ) + def readProperty(self, property, request): + if type(property) is tuple: + qname = property + else: + qname = property.qname() + + if qname == (caldav_namespace, "calendar-free-busy-set"): + # Always return at least an empty list + if not self.hasDeadProperty(property): + return succeed(()) + + return super(ScheduleInboxResource, self).readProperty(property, request) + @deferredGenerator def writeProperty(self, property, request): assert isinstance(property, davxml.WebDAVElement)
participants (1)
-
source_changes@macosforge.org