[CalendarServer-changes] [1447] CalendarServer/trunk/twistedcaldav
source_changes at macosforge.org
source_changes at macosforge.org
Wed Apr 4 10:55:18 PDT 2007
Revision: 1447
http://trac.macosforge.org/projects/calendarserver/changeset/1447
Author: cdaboo at apple.com
Date: 2007-04-04 10:55:18 -0700 (Wed, 04 Apr 2007)
Log Message:
-----------
Fix some bare except:'s that do not re-raise - make sure that catch explicit exceptions. A bug in calendar query logic was uncovered
by this and also fixed.
Modified Paths:
--------------
CalendarServer/trunk/twistedcaldav/ical.py
CalendarServer/trunk/twistedcaldav/itip.py
CalendarServer/trunk/twistedcaldav/method/mkcalendar.py
CalendarServer/trunk/twistedcaldav/method/report_common.py
CalendarServer/trunk/twistedcaldav/method/report_multiget.py
CalendarServer/trunk/twistedcaldav/query/calendarquery.py
CalendarServer/trunk/twistedcaldav/schedule.py
CalendarServer/trunk/twistedcaldav/static.py
Modified: CalendarServer/trunk/twistedcaldav/ical.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/ical.py 2007-04-04 14:46:26 UTC (rev 1446)
+++ CalendarServer/trunk/twistedcaldav/ical.py 2007-04-04 17:55:18 UTC (rev 1447)
@@ -851,7 +851,7 @@
method = self.propertyValue("METHOD")
if method not in ("PUBLISH", "REQUEST", "REPLY", "ADD", "CANCEL", "REFRESH", "COUNTER", "DECLINECOUNTER"):
return False
- except:
+ except ValueError:
return False
return True
@@ -882,7 +882,7 @@
if len([c for c in self.subcomponents()]) != 1:
return False
- except:
+ except ValueError:
return False
return True
@@ -903,7 +903,7 @@
try:
# Find the primary subcomponent
return self.propertyValue("ORGANIZER")
- except:
+ except ValueError:
pass
return None
@@ -924,7 +924,7 @@
try:
# Find the primary subcomponent
return self.getProperty("ORGANIZER")
- except:
+ except ValueError:
pass
return None
@@ -943,11 +943,8 @@
if component.name() != "VTIMEZONE":
return component.getAttendees()
else:
- try:
- # Find the property values
- return [p.value() for p in self.properties("ATTENDEE")]
- except:
- pass
+ # Find the property values
+ return [p.value() for p in self.properties("ATTENDEE")]
return None
@@ -978,13 +975,10 @@
if component.name() != "VTIMEZONE":
return component.getAttendeeProperty(match)
else:
- try:
- # Find the primary subcomponent
- for p in self.properties("ATTENDEE"):
- if _normalizeCUAddress(p.value()) in test:
- return p
- except:
- pass
+ # Find the primary subcomponent
+ for p in self.properties("ATTENDEE"):
+ if _normalizeCUAddress(p.value()) in test:
+ return p
return None
@@ -1004,7 +998,7 @@
try:
# Find the primary subcomponent
return self.propertyValue("X-CALENDARSERVER-MASK-UID")
- except:
+ except ValueError:
pass
return None
Modified: CalendarServer/trunk/twistedcaldav/itip.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/itip.py 2007-04-04 14:46:26 UTC (rev 1446)
+++ CalendarServer/trunk/twistedcaldav/itip.py 2007-04-04 17:55:18 UTC (rev 1447)
@@ -43,6 +43,8 @@
from twisted.web2.dav.method.report import NumberOfMatchesWithinLimits
from twisted.web2.dav.util import joinURL
from twisted.web2.dav.fileop import delete
+from twisted.web2.dav.resource import AccessDeniedError
+
from twistedcaldav import caldavxml
from twistedcaldav.ical import Property, iCalendarProductID
from twistedcaldav.method import report_common
@@ -561,7 +563,7 @@
d = waitForDeferred(inbox.checkPrivileges(request, (caldavxml.Schedule(),), principal=davxml.Principal(davxml.HRef.fromString(principal.principalURL()))))
yield d
d.getResult()
- except:
+ except AccessDeniedError:
logging.info("[ITIP]: could not send reply as %s does not have CALDAV:schedule permission on %s Inbox." % (principal.principalURL(), organizer))
yield None
return
@@ -682,7 +684,7 @@
return False
if calendar.mainType() not in ("VEVENT"):
return False
- except:
+ except ValueError:
return False
return True
@@ -711,7 +713,7 @@
# Remove the one we want to ignore
if ignore is not None:
result = [name for name in result if name != ignore.fp.basename()]
- except:
+ except ValueError:
return []
return result
@@ -741,7 +743,7 @@
# Remove the one we want to ignore
if ignore is not None:
names = [name for name in names if name != ignore.fp.basename()]
- except:
+ except ValueError:
return []
# Now get info for each name
@@ -767,7 +769,7 @@
dtstamp = comp.propertyValue("DTSTAMP")
rid = comp.propertyValue("RECURRENCE-ID")
- except:
+ except ValueError:
return (name, None, None, None, None)
return (name, uid, seq, dtstamp, rid)
Modified: CalendarServer/trunk/twistedcaldav/method/mkcalendar.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/method/mkcalendar.py 2007-04-04 14:46:26 UTC (rev 1446)
+++ CalendarServer/trunk/twistedcaldav/method/mkcalendar.py 2007-04-04 17:55:18 UTC (rev 1447)
@@ -106,7 +106,7 @@
p = waitForDeferred(self.writeProperty(property, request))
yield p
p.getResult()
- except:
+ except HTTPError:
errors.add(Failure(), property)
got_an_error = True
else:
Modified: CalendarServer/trunk/twistedcaldav/method/report_common.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/method/report_common.py 2007-04-04 14:46:26 UTC (rev 1446)
+++ CalendarServer/trunk/twistedcaldav/method/report_common.py 2007-04-04 17:55:18 UTC (rev 1447)
@@ -38,6 +38,8 @@
from twisted.web2.dav.method.propfind import propertyName
from twisted.web2.dav.method.report import NumberOfMatchesWithinLimits
from twisted.web2.dav.method.report import max_number_of_matches
+from twisted.web2.dav.resource import AccessDeniedError
+from twisted.web2.http import HTTPError
from twistedcaldav import caldavxml
from twistedcaldav.caldavxml import caldav_namespace
@@ -71,7 +73,7 @@
d = waitForDeferred(resource.checkPrivileges(request, privileges))
yield d
d.getResult()
- except:
+ except AccessDeniedError:
yield None
return
@@ -246,7 +248,7 @@
yield prop
prop = prop.getResult()
properties_by_status[responsecode.OK].append(prop)
- except:
+ except HTTPError:
f = Failure()
log.err("Error reading property %r for resource %s: %s" % (qname, request.uri, f.value))
@@ -281,7 +283,7 @@
d = waitForDeferred(calresource.checkPrivileges(request, (caldavxml.ReadFreeBusy(),)))
yield d
d.getResult()
- except:
+ except AccessDeniedError:
yield matchtotal
return
@@ -332,7 +334,7 @@
d = waitForDeferred(child.checkPrivileges(request, (caldavxml.ReadFreeBusy(),), inherited_aces=filteredaces))
yield d
d.getResult()
- except:
+ except AccessDeniedError:
continue
calendar = calresource.iCalendar(name)
Modified: CalendarServer/trunk/twistedcaldav/method/report_multiget.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/method/report_multiget.py 2007-04-04 14:46:26 UTC (rev 1446)
+++ CalendarServer/trunk/twistedcaldav/method/report_multiget.py 2007-04-04 17:55:18 UTC (rev 1447)
@@ -28,6 +28,7 @@
from twisted.web2.dav import davxml
from twisted.web2.dav.element.base import dav_namespace
from twisted.web2.dav.http import ErrorResponse, MultiStatusResponse
+from twisted.web2.dav.resource import AccessDeniedError
from twisted.web2.dav.util import joinURL
from twisted.web2.http import HTTPError, StatusResponse
@@ -218,7 +219,7 @@
d = waitForDeferred(parent.checkPrivileges(request, (davxml.Read(),)))
yield d
d.getResult()
- except:
+ except AccessDeniedError:
responses.append(davxml.StatusResponse(href, davxml.Status.fromResponseCode(responsecode.NOT_ALLOWED)))
continue
@@ -258,7 +259,7 @@
d = waitForDeferred(child.checkPrivileges(request, (davxml.Read(),), inherited_aces=filteredaces))
yield d
d.getResult()
- except:
+ except AccessDeniedError:
responses.append(davxml.StatusResponse(href, davxml.Status.fromResponseCode(responsecode.NOT_ALLOWED)))
continue
Modified: CalendarServer/trunk/twistedcaldav/query/calendarquery.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/query/calendarquery.py 2007-04-04 14:46:26 UTC (rev 1446)
+++ CalendarServer/trunk/twistedcaldav/query/calendarquery.py 2007-04-04 17:55:18 UTC (rev 1447)
@@ -123,7 +123,7 @@
compsExpression = None
# Now build compound expression
- if ((propsExpression is not None) or (compsExpression is not None)):
+ if ((propsExpression is not None) and (compsExpression is not None)):
expressions.append(expression.orExpression([propsExpression, compsExpression]))
elif propsExpression is not None:
expressions.append(propsExpression)
@@ -218,7 +218,7 @@
expression = calendarquery(filter)
sql = sqlgenerator.sqlgenerator(expression)
return sql.generate()
- except:
+ except ValueError:
return None
Modified: CalendarServer/trunk/twistedcaldav/schedule.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/schedule.py 2007-04-04 14:46:26 UTC (rev 1446)
+++ CalendarServer/trunk/twistedcaldav/schedule.py 2007-04-04 17:55:18 UTC (rev 1447)
@@ -34,6 +34,7 @@
from twisted.web2.http_headers import MimeType
from twisted.web2.dav import davxml
from twisted.web2.dav.http import ErrorResponse, errorForFailure, messageForFailure, statusForFailure
+from twisted.web2.dav.resource import AccessDeniedError
from twisted.web2.dav.util import joinURL, parentForURL
from twistedcaldav import caldavxml
@@ -333,7 +334,7 @@
d = waitForDeferred(inbox.checkPrivileges(request, (caldavxml.Schedule(),), principal=davxml.Principal(davxml.HRef(oprincipal.principalURL()))))
yield d
d.getResult()
- except:
+ except AccessDeniedError:
log.err("Could not access Inbox for recipient: %s" % (recipient,))
err = HTTPError(ErrorResponse(responsecode.NOT_FOUND, (caldav_namespace, "recipient-permisions")))
responses.add(recipient, Failure(exc_value=err), reqstatus="3.8;No authority")
Modified: CalendarServer/trunk/twistedcaldav/static.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/static.py 2007-04-04 14:46:26 UTC (rev 1446)
+++ CalendarServer/trunk/twistedcaldav/static.py 2007-04-04 17:55:18 UTC (rev 1447)
@@ -48,6 +48,7 @@
from twisted.web2.dav.http import ErrorResponse
from twisted.web2.dav.idav import IDAVResource
from twisted.web2.dav.method import put_common as put_common_base
+from twisted.web2.dav.resource import AccessDeniedError
from twisted.web2.dav.resource import davPrivilegeSet
from twisted.web2.dav.util import parentForURL, bindMethods
@@ -189,7 +190,7 @@
d = waitForDeferred(child.checkPrivileges(request, (davxml.Read(),), inherited_aces=filteredaces))
yield d
d.getResult()
- except:
+ except AccessDeniedError:
continue
subcalendar = self.iCalendar(name)
assert subcalendar.name() == "VCALENDAR"
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20070404/6c69ab67/attachment.html
More information about the calendarserver-changes
mailing list