[CalendarServer-changes] [11635] CalendarServer/trunk/twistedcaldav/directory

source_changes at macosforge.org source_changes at macosforge.org
Fri Aug 23 11:53:20 PDT 2013


Revision: 11635
          http://trac.calendarserver.org//changeset/11635
Author:   sagen at apple.com
Date:     2013-08-23 11:53:20 -0700 (Fri, 23 Aug 2013)
Log Message:
-----------
When searching for attendees against OD, also search on record name now, since not all directory deployments have
email address values in the directory record.

Modified Paths:
--------------
    CalendarServer/trunk/twistedcaldav/directory/appleopendirectory.py
    CalendarServer/trunk/twistedcaldav/directory/test/test_buildquery.py

Modified: CalendarServer/trunk/twistedcaldav/directory/appleopendirectory.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/directory/appleopendirectory.py	2013-08-23 17:30:05 UTC (rev 11634)
+++ CalendarServer/trunk/twistedcaldav/directory/appleopendirectory.py	2013-08-23 18:53:20 UTC (rev 11635)
@@ -1378,7 +1378,8 @@
 def buildNestedQueryFromTokens(tokens, mapping):
     """
     Build a DS query espression such that all the tokens must appear in either
-    the fullName (anywhere) or emailAddresses (at the beginning).
+    the fullName (anywhere), emailAddresses (at the beginning) or record name
+    (at the beginning).
     
     @param tokens: The tokens to search on
     @type tokens: C{list} of C{str}
@@ -1394,6 +1395,7 @@
     fields = [
         ("fullName", dsattributes.eDSContains),
         ("emailAddresses", dsattributes.eDSStartsWith),
+        ("recordName", dsattributes.eDSStartsWith),
     ]
 
     outer = []

Modified: CalendarServer/trunk/twistedcaldav/directory/test/test_buildquery.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/directory/test/test_buildquery.py	2013-08-23 17:30:05 UTC (rev 11634)
+++ CalendarServer/trunk/twistedcaldav/directory/test/test_buildquery.py	2013-08-23 18:53:20 UTC (rev 11635)
@@ -140,17 +140,17 @@
         query = buildNestedQueryFromTokens(["foo"], OpenDirectoryService._ODFields)
         self.assertEquals(
             query.generate(),
-            "(|(dsAttrTypeStandard:RealName=*foo*)(dsAttrTypeStandard:EMailAddress=foo*))"
+            "(|(dsAttrTypeStandard:RealName=*foo*)(dsAttrTypeStandard:EMailAddress=foo*)(dsAttrTypeStandard:RecordName=foo*))"
         )
 
         query = buildNestedQueryFromTokens(["foo", "bar"], OpenDirectoryService._ODFields)
         self.assertEquals(
             query.generate(),
-            "(&(|(dsAttrTypeStandard:RealName=*foo*)(dsAttrTypeStandard:EMailAddress=foo*))(|(dsAttrTypeStandard:RealName=*bar*)(dsAttrTypeStandard:EMailAddress=bar*)))"
+            "(&(|(dsAttrTypeStandard:RealName=*foo*)(dsAttrTypeStandard:EMailAddress=foo*)(dsAttrTypeStandard:RecordName=foo*))(|(dsAttrTypeStandard:RealName=*bar*)(dsAttrTypeStandard:EMailAddress=bar*)(dsAttrTypeStandard:RecordName=bar*)))"
         )
 
         query = buildNestedQueryFromTokens(["foo", "bar", "baz"], OpenDirectoryService._ODFields)
         self.assertEquals(
             query.generate(),
-            "(&(|(dsAttrTypeStandard:RealName=*foo*)(dsAttrTypeStandard:EMailAddress=foo*))(|(dsAttrTypeStandard:RealName=*bar*)(dsAttrTypeStandard:EMailAddress=bar*))(|(dsAttrTypeStandard:RealName=*baz*)(dsAttrTypeStandard:EMailAddress=baz*)))"
+            "(&(|(dsAttrTypeStandard:RealName=*foo*)(dsAttrTypeStandard:EMailAddress=foo*)(dsAttrTypeStandard:RecordName=foo*))(|(dsAttrTypeStandard:RealName=*bar*)(dsAttrTypeStandard:EMailAddress=bar*)(dsAttrTypeStandard:RecordName=bar*))(|(dsAttrTypeStandard:RealName=*baz*)(dsAttrTypeStandard:EMailAddress=baz*)(dsAttrTypeStandard:RecordName=baz*)))"
         )
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20130823/2c55d5d5/attachment.html>


More information about the calendarserver-changes mailing list