[CalendarServer-changes] [866]
CalendarServer/branches/users/cdaboo/cuproxy-857/twistedcaldav
source_changes at macosforge.org
source_changes at macosforge.org
Wed Dec 20 10:54:58 PST 2006
Revision: 866
http://trac.macosforge.org/projects/calendarserver/changeset/866
Author: cdaboo at apple.com
Date: 2006-12-20 10:54:57 -0800 (Wed, 20 Dec 2006)
Log Message:
-----------
Provision the proxy principal collections below each primary principal.
Modified Paths:
--------------
CalendarServer/branches/users/cdaboo/cuproxy-857/twistedcaldav/customxml.py
CalendarServer/branches/users/cdaboo/cuproxy-857/twistedcaldav/directory/principal.py
Modified: CalendarServer/branches/users/cdaboo/cuproxy-857/twistedcaldav/customxml.py
===================================================================
--- CalendarServer/branches/users/cdaboo/cuproxy-857/twistedcaldav/customxml.py 2006-12-20 18:54:40 UTC (rev 865)
+++ CalendarServer/branches/users/cdaboo/cuproxy-857/twistedcaldav/customxml.py 2006-12-20 18:54:57 UTC (rev 866)
@@ -52,6 +52,22 @@
def getValue(self):
return str(self)
+class CalendarProxyRead (davxml.WebDAVEmptyElement):
+ """
+ A read-only calendar user proxy principal resource.
+ (Apple Extension to CalDAV)
+ """
+ namespace = calendarserver_namespace
+ name = "calendar-proxy-read"
+
+class CalendarProxyWrite (davxml.WebDAVEmptyElement):
+ """
+ A read-write calendar user proxy principal resource.
+ (Apple Extension to CalDAV)
+ """
+ namespace = calendarserver_namespace
+ name = "calendar-proxy-write"
+
class TwistedCalendarPrincipalURI(davxml.WebDAVTextElement):
"""
Contains the calendarPrincipalURI value for a directory record corresponding to a principal.
@@ -183,3 +199,5 @@
davxml.ResourceType.dropboxhome = davxml.ResourceType(davxml.Collection(), DropBoxHome())
davxml.ResourceType.dropbox = davxml.ResourceType(davxml.Collection(), DropBox())
davxml.ResourceType.notifications = davxml.ResourceType(davxml.Collection(), Notifications())
+davxml.ResourceType.calendarproxyread = davxml.ResourceType(davxml.Principal(), davxml.Collection(), CalendarProxyRead())
+davxml.ResourceType.calendarproxywrite = davxml.ResourceType(davxml.Principal(), davxml.Collection(), CalendarProxyWrite())
Modified: CalendarServer/branches/users/cdaboo/cuproxy-857/twistedcaldav/directory/principal.py
===================================================================
--- CalendarServer/branches/users/cdaboo/cuproxy-857/twistedcaldav/directory/principal.py 2006-12-20 18:54:40 UTC (rev 865)
+++ CalendarServer/branches/users/cdaboo/cuproxy-857/twistedcaldav/directory/principal.py 2006-12-20 18:54:57 UTC (rev 866)
@@ -37,6 +37,8 @@
from twisted.web2.dav import davxml
from twisted.web2.dav.util import joinURL
+from twistedcaldav.config import config
+from twistedcaldav.calendaruserproxy import CalendarUserProxyPrincipalResource
from twistedcaldav.extensions import ReadOnlyResourceMixIn, DAVFile
from twistedcaldav.resource import CalendarPrincipalCollectionResource, CalendarPrincipalResource
from twistedcaldav.static import AutoProvisioningFileMixIn
@@ -426,6 +428,29 @@
else:
return None
+ ##
+ # Static
+ ##
+
+ def createSimilarFile(self, path):
+ log.err("Attempt to create clone %r of resource %r" % (path, self))
+ raise HTTPError(responsecode.NOT_FOUND)
+
+ def getChild(self, name, record=None):
+ if name == "":
+ return self
+
+ if config.CalendarUserProxyEnabled and name in ("calendar-proxy-read", "calendar-proxy-write"):
+ return CalendarUserProxyPrincipalResource(self.fp.child(name).path, self, name)
+ else:
+ return None
+
+ def listChildren(self):
+ if config.CalendarUserProxyEnabled:
+ return ("calendar-proxy-read", "calendar-proxy-write")
+ else:
+ return ()
+
##
# Utilities
##
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20061220/af8c93d1/attachment.html
More information about the calendarserver-changes
mailing list