[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