[CalendarServer-changes] [376]
CalendarServer/trunk/twistedcaldav/directory
source_changes at macosforge.org
source_changes at macosforge.org
Mon Nov 6 19:07:30 PST 2006
Revision: 376
http://trac.macosforge.org/projects/calendarserver/changeset/376
Author: wsanchez at apple.com
Date: 2006-11-06 19:07:30 -0800 (Mon, 06 Nov 2006)
Log Message:
-----------
userWithShortName -> recordWithShortName
Modified Paths:
--------------
CalendarServer/trunk/twistedcaldav/directory/appleopendirectory.py
CalendarServer/trunk/twistedcaldav/directory/idirectory.py
Modified: CalendarServer/trunk/twistedcaldav/directory/appleopendirectory.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/directory/appleopendirectory.py 2006-11-07 03:06:20 UTC (rev 375)
+++ CalendarServer/trunk/twistedcaldav/directory/appleopendirectory.py 2006-11-07 03:07:30 UTC (rev 376)
@@ -26,6 +26,7 @@
]
import opendirectory
+import dsattributes
from twistedcaldav.directory.directory import DirectoryService, DirectoryRecord
@@ -41,7 +42,7 @@
self._directory = directory
def recordTypes(self):
- return ("users", "groups", "resources")
+ return ("user", "group", "resource")
def listRecords(self, recordType):
def makeRecord(shortName, guid, lastModified, principalURI):
@@ -63,32 +64,39 @@
fullName = None,
)
- if recordType == "users":
+ if recordType == "user":
for data in opendirectory.listUsers(self._directory):
yield makeRecord(*data)
return
- if recordType == "groups":
+ if recordType == "group":
for data in opendirectory.listGroups(self._directory):
yield makeRecord(*data)
return
- if recordType == "resources":
+ if recordType == "resource":
for data in opendirectory.listResources(self._directory):
yield makeRecord(*data)
return
raise AssertionError("Unknown Open Directory record type: %s" % (recordType,))
- def userWithShortName(shortName):
- result = opendirectory.listUsersWithAttributes(self._directory, [shortName])
- if shortName not in result:
- return None
- result = result[shortName]
+ def recordWithShortName(self, recordType, shortName):
+ if recordType == "user":
+ result = opendirectory.listUsersWithAttributes(self._directory, [shortName])
+ if shortName not in result:
+ return None
+ result = result[shortName]
+ elif recordType == "group":
+ result = opendirectory.groupAttributes(self._directory, shortName)
+ elif recordType == "resource":
+ result = opendirectory.resourceAttributes(self._directory, shortName)
+ else:
+ raise ValueError("Unknown record type: %s" % (recordType,))
return OpenDirectoryRecord(
directory = self,
- recordType = "user",
+ recordType = recordType,
guid = result[dsattributes.attrGUID],
shortName = shortName,
fullName = result[dsattributes.attrRealName],
Modified: CalendarServer/trunk/twistedcaldav/directory/idirectory.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/directory/idirectory.py 2006-11-07 03:06:20 UTC (rev 375)
+++ CalendarServer/trunk/twistedcaldav/directory/idirectory.py 2006-11-07 03:07:30 UTC (rev 376)
@@ -43,11 +43,12 @@
@return: an iterable of records of the given type.
"""
- def userWithShortName(shortName):
+ def recordWithShortName(recordType, shortName):
"""
- @param short_name: the short name of the user to look up.
+ @param recordType: the type of the record to look up.
+ @param shortName: the short name of the record to look up.
@return: an L{IDirectoryRecord} provider with the given short name, or
- C{None} of no such user exists.
+ C{None} of no such record exists.
"""
class IDirectoryRecord(Interface):
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20061106/0914306e/attachment.html
More information about the calendarserver-changes
mailing list