[CalendarServer-changes] [4683] CalendarServer/branches/more-deferreds-4/twistedcaldav/log.py

source_changes at macosforge.org source_changes at macosforge.org
Fri Oct 30 12:00:21 PDT 2009


Revision: 4683
          http://trac.macosforge.org/projects/calendarserver/changeset/4683
Author:   glyph at apple.com
Date:     2009-10-30 12:00:17 -0700 (Fri, 30 Oct 2009)
Log Message:
-----------
a more convincing emulation of the 'err' API's signature makes more tests pass

Modified Paths:
--------------
    CalendarServer/branches/more-deferreds-4/twistedcaldav/log.py

Modified: CalendarServer/branches/more-deferreds-4/twistedcaldav/log.py
===================================================================
--- CalendarServer/branches/more-deferreds-4/twistedcaldav/log.py	2009-10-30 18:28:49 UTC (rev 4682)
+++ CalendarServer/branches/more-deferreds-4/twistedcaldav/log.py	2009-10-30 19:00:17 UTC (rev 4683)
@@ -325,9 +325,25 @@
         """
         Compatibility layer for Twisted's log module.
         """
-        self.emit("error", _why or "Unhandled Error",
-              isError=1, failure=_stuff or failure.Failure(),
-              **kw)
+        theMessage = None
+        if isinstance(_stuff, failure.Failure):
+            theFailure = _stuff
+        elif isinstance(_stuff, Exception):
+            theFailure = failure.Failure(_stuff)
+        elif _stuff is None:
+            theFailure = failure.Failure()
+        else:
+            theFailure = None
+            theMessage = repr(_stuff)
+        if theMessage is None:
+            if _why is None:
+                theMessage = "Unhandled Error"
+            else:
+                theMessage = _why
+        if theFailure is None:
+            self.emit("error", theMessage, isError=1, why=_why, **kw)
+        else:
+            self.emit("error", theMessage, isError=1, why=_why, failure=theFailure, **kw)
 
 class LoggingMixIn (object):
     """
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20091030/f936778c/attachment.html>


More information about the calendarserver-changes mailing list