[CalendarServer-changes] [3097] CalendarServer/trunk/twistedcaldav/directory/appleopendirectory.py
source_changes at macosforge.org
source_changes at macosforge.org
Wed Oct 1 11:40:28 PDT 2008
Revision: 3097
http://trac.macosforge.org/projects/calendarserver/changeset/3097
Author: sagen at apple.com
Date: 2008-10-01 11:40:28 -0700 (Wed, 01 Oct 2008)
Log Message:
-----------
Return existing records rather than synthesizing new ones
Modified Paths:
--------------
CalendarServer/trunk/twistedcaldav/directory/appleopendirectory.py
Modified: CalendarServer/trunk/twistedcaldav/directory/appleopendirectory.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/directory/appleopendirectory.py 2008-10-01 01:59:13 UTC (rev 3096)
+++ CalendarServer/trunk/twistedcaldav/directory/appleopendirectory.py 2008-10-01 18:40:28 UTC (rev 3097)
@@ -515,57 +515,15 @@
dsquery.expression(operand, expressions).generate(),
caseless,
recordType,
- [
- dsattributes.kDS1AttrGeneratedUID,
- dsattributes.kDS1AttrFirstName,
- dsattributes.kDS1AttrLastName,
- dsattributes.kDSNAttrEMailAddress,
- dsattributes.kDS1AttrDistinguishedName,
- dsattributes.kDSNAttrMetaNodeLocation,
- ]
+ [ dsattributes.kDS1AttrGeneratedUID ]
)
self.log_info("Got back %d records from OD" % (len(results),))
for key, val in results.iteritems():
self.log_debug("OD result: %s %s" % (key, val))
-
- try:
-
- # Email field from OD can either be a string or a list
- emailAddresses = set()
- addrs = val.get(dsattributes.kDSNAttrEMailAddress, None)
- if isinstance(addrs, str):
- emailAddresses.add(addrs.lower())
- elif isinstance(addrs, list):
- for addr in addrs:
- emailAddresses.add(addr.lower())
-
- # TODO: Review this code...
- calendarUserAddresses = set()
- enabledForCalendaring = False
- if val.has_key(dsattributes.kDSNAttrEMailAddress):
- enabledForCalendaring = True
- calendarUserAddresses.add(val[dsattributes.kDSNAttrEMailAddress])
- rec = OpenDirectoryRecord(
- service = self,
- recordType = self._fromODRecordTypes[recordType],
- guid = val[dsattributes.kDS1AttrGeneratedUID],
- nodeName = val[dsattributes.kDSNAttrMetaNodeLocation],
- shortName = key,
- fullName = val.get(dsattributes.kDS1AttrDistinguishedName, ""),
- firstName = val.get(dsattributes.kDS1AttrFirstName, ""),
- lastName = val.get(dsattributes.kDS1AttrLastName, ""),
- emailAddresses = emailAddresses,
- calendarUserAddresses = calendarUserAddresses,
- autoSchedule = False,
- enabledForCalendaring = enabledForCalendaring,
- memberGUIDs = (),
- proxyGUIDs = (),
- readOnlyProxyGUIDs = (),
- )
+ guid = val[dsattributes.kDS1AttrGeneratedUID]
+ rec = self.recordWithGUID(guid)
+ if rec:
yield rec
- except Exception, e:
- self.log_error("Failed to convert OD result into record: %s %s" % (val, e))
- raise
except Exception, e:
self.log_error("OD search failed: %s" % (e,))
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20081001/a79663f2/attachment.html
More information about the calendarserver-changes
mailing list