[CalendarServer-changes] [385]
CalendarServer/trunk/twistedcaldav/resource.py
source_changes at macosforge.org
source_changes at macosforge.org
Tue Nov 7 14:41:30 PST 2006
Revision: 385
http://trac.macosforge.org/projects/calendarserver/changeset/385
Author: wsanchez at apple.com
Date: 2006-11-07 14:41:30 -0800 (Tue, 07 Nov 2006)
Log Message:
-----------
Revert r282, which breaks DirectoryTypePrincipalProvisioningResource.findAnyGUID, which is illegally using a private variable in CalendarPrincipalCollectionResource.
Modified Paths:
--------------
CalendarServer/trunk/twistedcaldav/resource.py
Modified: CalendarServer/trunk/twistedcaldav/resource.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/resource.py 2006-11-07 03:32:53 UTC (rev 384)
+++ CalendarServer/trunk/twistedcaldav/resource.py 2006-11-07 22:41:30 UTC (rev 385)
@@ -470,7 +470,7 @@
"""
# Use a WeakKeyDictionary to keep track of all instances.
# A WeakKeySet would be more appropriate, but there is no such class yet.
- _principleCollectionSet = set()
+ _principleCollectionSet = WeakValueDictionary()
@classmethod
def outboxForCalendarUser(clazz, request, address):
@@ -517,7 +517,7 @@
# Register self with class
if url not in CalendarPrincipalCollectionResource._principleCollectionSet:
- CalendarPrincipalCollectionResource._principleCollectionSet.add(url)
+ CalendarPrincipalCollectionResource._principleCollectionSet[url] = self
def isCollection(self):
return True
@@ -574,11 +574,9 @@
@return: the L{CalendarPrincipalResource} for the specified calendar
user, or C{None} if the user is not found.
"""
- for url in CalendarPrincipalCollectionResource._principleCollectionSet:
+ for url in CalendarPrincipalCollectionResource._principleCollectionSet.keys():
try:
- pcollection = waitForDeferred(request.locateResource(url))
- yield pcollection
- pcollection = pcollection.getResult()
+ pcollection = CalendarPrincipalCollectionResource._principleCollectionSet[url]
if isinstance(pcollection, CalendarPrincipalCollectionResource):
principal = waitForDeferred(pcollection.findCalendarUser(request, address))
yield principal
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20061107/3f15de4f/attachment.html
More information about the calendarserver-changes
mailing list