[CalendarServer-changes] [2016] CalendarServer/branches/release/CalendarServer-1.1-dev/twistedcaldav

source_changes at macosforge.org source_changes at macosforge.org
Thu Nov 15 11:43:17 PST 2007


Revision: 2016
          http://trac.macosforge.org/projects/calendarserver/changeset/2016
Author:   wsanchez at apple.com
Date:     2007-11-15 11:43:16 -0800 (Thu, 15 Nov 2007)

Log Message:
-----------
Pulled up r2010 r2011 from trunk.

Modified Paths:
--------------
    CalendarServer/branches/release/CalendarServer-1.1-dev/twistedcaldav/caldavxml.py
    CalendarServer/branches/release/CalendarServer-1.1-dev/twistedcaldav/customxml.py
    CalendarServer/branches/release/CalendarServer-1.1-dev/twistedcaldav/directory/calendaruserproxy.py
    CalendarServer/branches/release/CalendarServer-1.1-dev/twistedcaldav/resource.py
    CalendarServer/branches/release/CalendarServer-1.1-dev/twistedcaldav/test/test_config.py

Modified: CalendarServer/branches/release/CalendarServer-1.1-dev/twistedcaldav/caldavxml.py
===================================================================
--- CalendarServer/branches/release/CalendarServer-1.1-dev/twistedcaldav/caldavxml.py	2007-11-15 19:41:40 UTC (rev 2015)
+++ CalendarServer/branches/release/CalendarServer-1.1-dev/twistedcaldav/caldavxml.py	2007-11-15 19:43:16 UTC (rev 2016)
@@ -46,6 +46,13 @@
 
 caldav_namespace = "urn:ietf:params:xml:ns:caldav"
 
+caldav_compliance = (
+    "calendar-access",
+    "calendar-schedule",
+    "calendar-availability",
+    "inbox-availability",
+)
+
 class CalDAVElement (davxml.WebDAVElement):
     """
     CalDAV XML element.

Modified: CalendarServer/branches/release/CalendarServer-1.1-dev/twistedcaldav/customxml.py
===================================================================
--- CalendarServer/branches/release/CalendarServer-1.1-dev/twistedcaldav/customxml.py	2007-11-15 19:41:40 UTC (rev 2015)
+++ CalendarServer/branches/release/CalendarServer-1.1-dev/twistedcaldav/customxml.py	2007-11-15 19:43:16 UTC (rev 2016)
@@ -32,6 +32,10 @@
 
 calendarserver_namespace = "http://calendarserver.org/ns/"
 
+calendarserver_proxy_compliance = (
+    "calendar-proxy",
+)
+
 class TwistedGUIDProperty (davxml.WebDAVTextElement):
     """
     Contains the GUID value for a directory record corresponding to a principal.

Modified: CalendarServer/branches/release/CalendarServer-1.1-dev/twistedcaldav/directory/calendaruserproxy.py
===================================================================
--- CalendarServer/branches/release/CalendarServer-1.1-dev/twistedcaldav/directory/calendaruserproxy.py	2007-11-15 19:41:40 UTC (rev 2015)
+++ CalendarServer/branches/release/CalendarServer-1.1-dev/twistedcaldav/directory/calendaruserproxy.py	2007-11-15 19:43:16 UTC (rev 2016)
@@ -35,6 +35,8 @@
 from twisted.web2.dav.util import joinURL
 from twisted.web2.http import HTTPError, StatusResponse
 
+from twistedcaldav import caldavxml
+from twistedcaldav import customxml
 from twistedcaldav.config import config
 from twistedcaldav.extensions import DAVFile, DAVPrincipalResource
 from twistedcaldav.extensions import ReadOnlyWritePropertiesResourceMixIn
@@ -80,12 +82,10 @@
     """
 
     def davComplianceClasses(self):
-        return tuple(super(CalendarUserProxyPrincipalResource, self).davComplianceClasses()) + (
-            "calendar-access",
-            "calendar-schedule",
-            "calendar-availability",
-            "calendar-proxy",
-        )
+        extra_compliance = caldavxml.caldav_compliance
+        if config.EnableProxyPrincipals:
+            extra_compliance += customxml.calendarserver_proxy_compliance
+        return tuple(super(CalendarUserProxyPrincipalResource, self).davComplianceClasses()) + extra_compliance
 
     def __init__(self, path, parent, proxyType):
         """

Modified: CalendarServer/branches/release/CalendarServer-1.1-dev/twistedcaldav/resource.py
===================================================================
--- CalendarServer/branches/release/CalendarServer-1.1-dev/twistedcaldav/resource.py	2007-11-15 19:41:40 UTC (rev 2015)
+++ CalendarServer/branches/release/CalendarServer-1.1-dev/twistedcaldav/resource.py	2007-11-15 19:43:16 UTC (rev 2016)
@@ -32,8 +32,6 @@
 
 from twisted.internet import reactor
 from twisted.internet.defer import Deferred, maybeDeferred, succeed
-from twisted.internet.defer import deferredGenerator, waitForDeferred
-from twisted.python import log
 from twisted.web2 import responsecode
 from twisted.web2.dav import davxml
 from twisted.web2.dav.idav import IDAVPrincipalCollectionResource
@@ -58,9 +56,6 @@
 from twistedcaldav.ical import allowedComponents
 from twistedcaldav.ical import Component as iComponent
 
-from twistedcaldav.directory.directory import DirectoryService
-from twistedcaldav.directory.sudo import SudoDirectoryService
-
 if twistedcaldav.__version__:
     serverVersion = twisted.web2.server.VERSION + " TwistedCalDAV/" + twistedcaldav.__version__
 else:
@@ -125,13 +120,10 @@
     ##
 
     def davComplianceClasses(self):
-        return tuple(super(CalDAVResource, self).davComplianceClasses()) + (
-            "calendar-access",
-            "calendar-schedule",
-            "calendar-availability",
-            "inbox-availability",
-            "calendar-proxy",
-        )
+        extra_compliance = caldavxml.caldav_compliance
+        if config.EnableProxyPrincipals:
+            extra_compliance += customxml.calendarserver_proxy_compliance
+        return tuple(super(CalDAVResource, self).davComplianceClasses()) + extra_compliance
 
     liveProperties = DAVResource.liveProperties + (
         (caldav_namespace, "supported-calendar-component-set"),
@@ -490,13 +482,10 @@
     implements(ICalendarPrincipalResource)
 
     def davComplianceClasses(self):
-        return tuple(super(CalendarPrincipalResource, self).davComplianceClasses()) + (
-            "calendar-access",
-            "calendar-schedule",
-            "calendar-availability",
-            "inbox-availability",
-            "calendar-proxy",
-        )
+        extra_compliance = caldavxml.caldav_compliance
+        if config.EnableProxyPrincipals:
+            extra_compliance += customxml.calendarserver_proxy_compliance
+        return tuple(super(CalendarPrincipalResource, self).davComplianceClasses()) + extra_compliance
 
     liveProperties = tuple(DAVPrincipalResource.liveProperties) + (
         (caldav_namespace, "calendar-home-set"        ),

Modified: CalendarServer/branches/release/CalendarServer-1.1-dev/twistedcaldav/test/test_config.py
===================================================================
--- CalendarServer/branches/release/CalendarServer-1.1-dev/twistedcaldav/test/test_config.py	2007-11-15 19:41:40 UTC (rev 2015)
+++ CalendarServer/branches/release/CalendarServer-1.1-dev/twistedcaldav/test/test_config.py	2007-11-15 19:43:16 UTC (rev 2016)
@@ -21,6 +21,7 @@
 from twistedcaldav.py.plistlib import writePlist
 
 from twistedcaldav.config import config, defaultConfig, ConfigurationError
+from twistedcaldav.static import CalDAVFile
 
 testConfig = """<?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
@@ -213,3 +214,14 @@
         config.updateDefaults({'Foo': 'bar'})
 
         self.assertNotIn('Foo', defaultConfig)
+
+    def testComplianceClasses(self):
+        
+        resource = CalDAVFile("/")
+        
+        config.EnableProxyPrincipals = True
+        self.assertTrue("calendar-proxy" in resource.davComplianceClasses())
+        
+        config.EnableProxyPrincipals = False
+        self.assertTrue("calendar-proxy" not in resource.davComplianceClasses())
+        
\ No newline at end of file

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20071115/f64be781/attachment-0001.html


More information about the calendarserver-changes mailing list