[Bedework-commit] caldav r165 - trunk/server/src/org/bedework/caldav/server

svnadmin at bedework.org svnadmin at bedework.org
Tue May 22 15:40:47 EDT 2007


Author: douglm
Date: 2007-05-22 15:40:46 -0400 (Tue, 22 May 2007)
New Revision: 165

Modified:
   trunk/server/src/org/bedework/caldav/server/PostMethod.java
Log:
More scheduling changes.

Tidy up error handling.
Rename autoresponder.
Add dtstamp to organzer and to schema
Move handling of replies into Scheduling class 

Minor changes to comments in CalSvcDb

Modified: trunk/server/src/org/bedework/caldav/server/PostMethod.java
===================================================================
--- trunk/server/src/org/bedework/caldav/server/PostMethod.java	2007-05-22 04:22:32 UTC (rev 164)
+++ trunk/server/src/org/bedework/caldav/server/PostMethod.java	2007-05-22 19:40:46 UTC (rev 165)
@@ -60,6 +60,7 @@
 import org.bedework.calfacade.BwOrganizer;
 import org.bedework.calfacade.ScheduleResult;
 import org.bedework.calfacade.ScheduleResult.ScheduleRecipientResult;
+import org.bedework.calfacade.exc.CalFacadeException;
 import org.bedework.davdefs.CaldavTags;
 import org.bedework.icalendar.IcalTranslator;
 import org.bedework.icalendar.Icalendar;
@@ -416,40 +417,31 @@
   }
 
   private boolean checkStatus(ScheduleResult sr) throws WebdavException {
-    // XXX Needs to set a response on failure
-    if (sr.badMethod) {
-      if (debug) {
-        debugMsg("ScheduleResult: badMethod");
-      }
+    if (sr.errorCode == null) {
+      return true;
+    }
 
+    if (debug) {
+      debugMsg("ScheduleResult: " + sr);
+    }
+
+    if (sr.errorCode == CalFacadeException.schedulingBadMethod) {
       throw new WebdavForbidden(CaldavTags.validCalendarData, "Bad METHOD");
     }
 
-    if (sr.badAttendees) {
-      if (debug) {
-        debugMsg("ScheduleResult: badAttendees");
-      }
-
+    if (sr.errorCode == CalFacadeException.schedulingBadAttendees) {
       throw new WebdavForbidden(CaldavTags.attendeeAllowed, "Bad attendees");
     }
 
-    if (sr.attendeeAccessDisallowed) {
-      if (debug) {
-        debugMsg("ScheduleResult: attendeeAccessDisallowed");
-      }
-
+    if (sr.errorCode == CalFacadeException.schedulingAttendeeAccessDisallowed) {
       throw new WebdavForbidden(CaldavTags.attendeeAllowed, "attendeeAccessDisallowed");
     }
 
-    if (sr.noRecipients) {
-      if (debug) {
-        debugMsg("ScheduleResult: noRecipients");
-      }
-
+    if (sr.errorCode == CalFacadeException.schedulingNoRecipients) {
       return false;
     }
 
-    return true;
+    throw new WebdavForbidden(sr.errorCode);
   }
 
   private void setReqstat(int status) throws WebdavException {



More information about the Bedework-commit mailing list