[CalendarServer-changes] [8835] CalendarServer/trunk/calendarserver/tools/validcalendardata.py

source_changes at macosforge.org source_changes at macosforge.org
Fri Mar 9 18:35:06 PST 2012


Revision: 8835
          http://trac.macosforge.org/projects/calendarserver/changeset/8835
Author:   cdaboo at apple.com
Date:     2012-03-09 18:35:06 -0800 (Fri, 09 Mar 2012)
Log Message:
-----------
Make sure rrule truncation is accounted for.

Modified Paths:
--------------
    CalendarServer/trunk/calendarserver/tools/validcalendardata.py

Modified: CalendarServer/trunk/calendarserver/tools/validcalendardata.py
===================================================================
--- CalendarServer/trunk/calendarserver/tools/validcalendardata.py	2012-03-10 02:17:22 UTC (rev 8834)
+++ CalendarServer/trunk/calendarserver/tools/validcalendardata.py	2012-03-10 02:35:06 UTC (rev 8835)
@@ -24,6 +24,7 @@
 from twisted.application.service import Service
 from twisted.python.text import wordWrap
 from twisted.python.usage import Options
+from twistedcaldav.config import config
 from twistedcaldav.ical import Component
 from twistedcaldav.stdconfig import DEFAULT_CONFIG_FILE
 import os
@@ -151,8 +152,11 @@
     
         result = True
         message = ""
+        truncated = False
         try:
             component = Component.fromString(self.input.read())
+            if config.MaxInstancesForRRULE != 0:
+                truncated = component.truncateRecurrence(config.MaxInstancesForRRULE)
             component.validCalendarData(doFix=False, validateRecurrences=True)
             component.validCalendarForCalDAV(methodAllowed=True)
             component.validOrganizerForScheduling(doFix=False)
@@ -161,6 +165,8 @@
             message = str(e)
             if message.startswith(errorPrefix):
                 message = message[len(errorPrefix):]
+            if truncated:
+                message = "Calendar data RRULE truncated\n" + message
     
         return (result, message,)
 
@@ -184,7 +190,6 @@
         stderr.write("Unable to open input file for reading: %s\n" % (e))
         sys.exit(1)
     def makeService(store):
-        from twistedcaldav.config import config
         return ValidService(store, options, output, input, reactor, config)
     utilityMain(options['config'], makeService, reactor)
 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20120309/47e45871/attachment.html>


More information about the calendarserver-changes mailing list