[Bedework-commit] caldav r174 - in trunk: boeingexchange/src/edu/rpi/cct/bedework/caldav bwcaldav/src/org/bedework/caldav/bwserver domino/src/edu/rpi/cct/bedework/caldav google/src/edu/rpi/cct/bedework/caldav server/src/org/bedework/caldav/server

svnadmin at bedework.org svnadmin at bedework.org
Thu Jun 28 16:52:30 EDT 2007


Author: douglm
Date: 2007-06-28 16:52:29 -0400 (Thu, 28 Jun 2007)
New Revision: 174

Modified:
   trunk/boeingexchange/src/edu/rpi/cct/bedework/caldav/BexchangeSysIntfImpl.java
   trunk/bwcaldav/src/org/bedework/caldav/bwserver/BwSysIntfImpl.java
   trunk/domino/src/edu/rpi/cct/bedework/caldav/DominoSysIntfImpl.java
   trunk/google/src/edu/rpi/cct/bedework/caldav/GoogleSysIntfImpl.java
   trunk/server/src/org/bedework/caldav/server/CaldavCalNode.java
   trunk/server/src/org/bedework/caldav/server/CaldavComponentNode.java
   trunk/server/src/org/bedework/caldav/server/CaldavPrincipalNode.java
   trunk/server/src/org/bedework/caldav/server/SysIntf.java
Log:
Further schema updates required to get calendar properties working


Modified: trunk/boeingexchange/src/edu/rpi/cct/bedework/caldav/BexchangeSysIntfImpl.java
===================================================================
--- trunk/boeingexchange/src/edu/rpi/cct/bedework/caldav/BexchangeSysIntfImpl.java	2007-06-28 04:54:49 UTC (rev 173)
+++ trunk/boeingexchange/src/edu/rpi/cct/bedework/caldav/BexchangeSysIntfImpl.java	2007-06-28 20:52:29 UTC (rev 174)
@@ -582,6 +582,13 @@
     return cal;
   }
 
+  /* (non-Javadoc)
+   * @see org.bedework.caldav.server.SysIntf#updateCalendar(org.bedework.calfacade.BwCalendar)
+   */
+  public void updateCalendar(BwCalendar val) throws WebdavException {
+    throw new WebdavException("unimplemented");
+  }
+
   public Collection<BwCalendar> getCalendars(BwCalendar cal) throws WebdavException {
     throw new WebdavException("unimplemented");
   }

Modified: trunk/bwcaldav/src/org/bedework/caldav/bwserver/BwSysIntfImpl.java
===================================================================
--- trunk/bwcaldav/src/org/bedework/caldav/bwserver/BwSysIntfImpl.java	2007-06-28 04:54:49 UTC (rev 173)
+++ trunk/bwcaldav/src/org/bedework/caldav/bwserver/BwSysIntfImpl.java	2007-06-28 20:52:29 UTC (rev 174)
@@ -674,6 +674,9 @@
     throw new WebdavException("Unexpected response from copymove");
   }
 
+  /* (non-Javadoc)
+   * @see org.bedework.caldav.server.SysIntf#getCalendar(java.lang.String)
+   */
   public BwCalendar getCalendar(String path) throws WebdavException {
     try {
       return getSvci().getCalendar(path);
@@ -686,6 +689,27 @@
     }
   }
 
+  /* (non-Javadoc)
+   * @see org.bedework.caldav.server.SysIntf#updateCalendar(org.bedework.calfacade.BwCalendar)
+   */
+  public void updateCalendar(BwCalendar val) throws WebdavException {
+    try {
+      getSvci().updateCalendar(val);
+    } catch (CalFacadeAccessException cfae) {
+      throw new WebdavForbidden();
+    } catch (CalFacadeException cfe) {
+      if (CalFacadeException.duplicateGuid.equals(cfe.getMessage())) {
+        throw new WebdavBadRequest("Duplicate-guid");
+      }
+      throw new WebdavException(cfe);
+    } catch (Throwable t) {
+      throw new WebdavException(t);
+    }
+  }
+
+  /* (non-Javadoc)
+   * @see org.bedework.caldav.server.SysIntf#getCalendars(org.bedework.calfacade.BwCalendar)
+   */
   public Collection<BwCalendar> getCalendars(BwCalendar cal) throws WebdavException {
     try {
       return getSvci().getCalendars(cal);

Modified: trunk/domino/src/edu/rpi/cct/bedework/caldav/DominoSysIntfImpl.java
===================================================================
--- trunk/domino/src/edu/rpi/cct/bedework/caldav/DominoSysIntfImpl.java	2007-06-28 04:54:49 UTC (rev 173)
+++ trunk/domino/src/edu/rpi/cct/bedework/caldav/DominoSysIntfImpl.java	2007-06-28 20:52:29 UTC (rev 174)
@@ -608,6 +608,13 @@
     return cal;
   }
 
+  /* (non-Javadoc)
+   * @see org.bedework.caldav.server.SysIntf#updateCalendar(org.bedework.calfacade.BwCalendar)
+   */
+  public void updateCalendar(BwCalendar val) throws WebdavException {
+    throw new WebdavException("unimplemented");
+  }
+
   public Collection<BwCalendar> getCalendars(BwCalendar cal) throws WebdavException {
     throw new WebdavException("unimplemented");
   }

Modified: trunk/google/src/edu/rpi/cct/bedework/caldav/GoogleSysIntfImpl.java
===================================================================
--- trunk/google/src/edu/rpi/cct/bedework/caldav/GoogleSysIntfImpl.java	2007-06-28 04:54:49 UTC (rev 173)
+++ trunk/google/src/edu/rpi/cct/bedework/caldav/GoogleSysIntfImpl.java	2007-06-28 20:52:29 UTC (rev 174)
@@ -515,6 +515,9 @@
     throw new WebdavException("unimplemented");
   }
 
+  /* (non-Javadoc)
+   * @see org.bedework.caldav.server.SysIntf#getCalendar(java.lang.String)
+   */
   public BwCalendar getCalendar(String path) throws WebdavException {
     // XXX Just fake it up for the moment.
 
@@ -545,6 +548,13 @@
     return cal;
   }
 
+  /* (non-Javadoc)
+   * @see org.bedework.caldav.server.SysIntf#updateCalendar(org.bedework.calfacade.BwCalendar)
+   */
+  public void updateCalendar(BwCalendar val) throws WebdavException {
+    throw new WebdavException("unimplemented");
+  }
+
   public Collection<BwCalendar> getCalendars(BwCalendar cal) throws WebdavException {
     throw new WebdavException("unimplemented");
   }

Modified: trunk/server/src/org/bedework/caldav/server/CaldavCalNode.java
===================================================================
--- trunk/server/src/org/bedework/caldav/server/CaldavCalNode.java	2007-06-28 04:54:49 UTC (rev 173)
+++ trunk/server/src/org/bedework/caldav/server/CaldavCalNode.java	2007-06-28 20:52:29 UTC (rev 174)
@@ -278,6 +278,15 @@
     return vfreeBusyString;
   }
 
+  /* (non-Javadoc)
+   * @see edu.rpi.cct.webdav.servlet.shared.WebdavNsNode#update()
+   */
+  public void update() throws WebdavException {
+    if (cal != null) {
+      getSysi().updateCalendar(cal);
+    }
+  }
+
   /* ====================================================================
    *                   Required webdav properties
    * ==================================================================== */
@@ -442,6 +451,7 @@
         if (prop == null) {
           prop = new BwProperty(AppleIcalTags.calendarcolor.getLocalPart(),
                                 XmlUtil.getElementContent(val));
+          cal.addProperty(prop);
         } else {
           prop.setValue(XmlUtil.getElementContent(val));
         }

Modified: trunk/server/src/org/bedework/caldav/server/CaldavComponentNode.java
===================================================================
--- trunk/server/src/org/bedework/caldav/server/CaldavComponentNode.java	2007-06-28 04:54:49 UTC (rev 173)
+++ trunk/server/src/org/bedework/caldav/server/CaldavComponentNode.java	2007-06-28 20:52:29 UTC (rev 174)
@@ -303,6 +303,17 @@
     return comp;
   }
 
+  /* (non-Javadoc)
+   * @see edu.rpi.cct.webdav.servlet.shared.WebdavNsNode#update()
+   */
+  public void update() throws WebdavException {
+    if (eventInfo != null) {
+      getSysi().updateEvent(eventInfo.getEvent(),
+                            eventInfo.getOverrideProxies(),
+                            eventInfo.getChangeset());
+    }
+  }
+
   /**
    * @return String
    */

Modified: trunk/server/src/org/bedework/caldav/server/CaldavPrincipalNode.java
===================================================================
--- trunk/server/src/org/bedework/caldav/server/CaldavPrincipalNode.java	2007-06-28 04:54:49 UTC (rev 173)
+++ trunk/server/src/org/bedework/caldav/server/CaldavPrincipalNode.java	2007-06-28 20:52:29 UTC (rev 174)
@@ -117,6 +117,12 @@
     return null;
   }
 
+  /* (non-Javadoc)
+   * @see edu.rpi.cct.webdav.servlet.shared.WebdavNsNode#update()
+   */
+  public void update() throws WebdavException {
+  }
+
   /* ====================================================================
    *                   Abstract methods
    * ==================================================================== */

Modified: trunk/server/src/org/bedework/caldav/server/SysIntf.java
===================================================================
--- trunk/server/src/org/bedework/caldav/server/SysIntf.java	2007-06-28 04:54:49 UTC (rev 173)
+++ trunk/server/src/org/bedework/caldav/server/SysIntf.java	2007-06-28 20:52:29 UTC (rev 174)
@@ -477,6 +477,13 @@
    */
   public BwCalendar getCalendar(String path) throws WebdavException;
 
+  /** Update a calendar.
+   *
+   * @param val           updated BwCalendar object
+   * @throws WebdavException
+   */
+  public void updateCalendar(BwCalendar val) throws WebdavException;
+
   /** Returns children of the given calendar to which the current user has
    * some access.
    *



More information about the Bedework-commit mailing list