[CalendarServer-changes] [3808] CalendarServer/trunk/twistedcaldav/extensions.py
source_changes at macosforge.org
source_changes at macosforge.org
Tue Mar 10 15:50:10 PDT 2009
Revision: 3808
http://trac.macosforge.org/projects/calendarserver/changeset/3808
Author: wsanchez at apple.com
Date: 2009-03-10 15:50:10 -0700 (Tue, 10 Mar 2009)
Log Message:
-----------
Rework updateCacheTokenOnCallback so that it's not setting up a no-op callback chain if the cacheNotifier attr isn't set.
Modified Paths:
--------------
CalendarServer/trunk/twistedcaldav/extensions.py
Modified: CalendarServer/trunk/twistedcaldav/extensions.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/extensions.py 2009-03-10 22:23:08 UTC (rev 3807)
+++ CalendarServer/trunk/twistedcaldav/extensions.py 2009-03-10 22:50:10 UTC (rev 3808)
@@ -280,19 +280,23 @@
returnValue(result)
def updateCacheTokenOnCallback(f):
- def fun(self, *args, **kwargs):
- def _updateToken(response):
- return self.cacheNotifier.changed().addCallback(
- lambda _: response)
+ def wrapper(self, *args, **kwargs):
+ if hasattr(self, "cacheNotifier"):
+ def updateToken(response):
+ d = self.cacheNotifier.changed()
+ d.addCallback(lambda _: response)
+ return d
- d = maybeDeferred(f, self, *args, **kwargs)
+ d = maybeDeferred(f, self, *args, **kwargs)
- if hasattr(self, 'cacheNotifier'):
- d.addCallback(_updateToken)
+ if hasattr(self, "cacheNotifier"):
+ d.addCallback(updateToken)
- return d
+ return d
+ else:
+ return f(self, *args, **kwargs)
- return fun
+ return wrapper
class DirectoryPrincipalPropertySearchMixIn(object):
@@ -467,9 +471,7 @@
"""
def renderHTTP(self, request):
-
log.error("%s %s %s" % (request.method, urllib.unquote(request.uri), "HTTP/%s.%s" % request.clientproto))
-
return super(DAVResource, self).renderHTTP(request)
@updateCacheTokenOnCallback
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20090310/4586ed9a/attachment.html>
More information about the calendarserver-changes
mailing list