[Bedework-commit] caldav r163 -
trunk/server/src/org/bedework/caldav/server
svnadmin at bedework.org
svnadmin at bedework.org
Tue May 15 10:57:58 EDT 2007
Author: douglm
Date: 2007-05-15 10:57:58 -0400 (Tue, 15 May 2007)
New Revision: 163
Modified:
trunk/server/src/org/bedework/caldav/server/CaldavBWIntf.java
trunk/server/src/org/bedework/caldav/server/CaldavBwNode.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
Log:
Fix some errors in the user clients caused by removal of principal info from system parameters.
Remove principal info from admin form.
More CalDAV property related fixes.
Modified: trunk/server/src/org/bedework/caldav/server/CaldavBWIntf.java
===================================================================
--- trunk/server/src/org/bedework/caldav/server/CaldavBWIntf.java 2007-05-14 19:47:52 UTC (rev 162)
+++ trunk/server/src/org/bedework/caldav/server/CaldavBWIntf.java 2007-05-15 14:57:58 UTC (rev 163)
@@ -270,18 +270,15 @@
}
}
+ /* (non-Javadoc)
+ * @see edu.rpi.cct.webdav.servlet.shared.WebdavNsIntf#getNode(java.lang.String, int, int)
+ */
public WebdavNsNode getNode(String uri,
int existance,
int nodeType) throws WebdavException {
return getNodeInt(uri, existance, nodeType, true, null, null);
}
- public WebdavNsNode getNodeEncoded(String uri,
- int existance,
- int nodeType) throws WebdavException {
- return getNodeInt(uri, existance, nodeType, false, null, null);
- }
-
private WebdavNsNode getNodeInt(String uri,
int existance,
int nodeType,
@@ -408,24 +405,9 @@
throw new WebdavException("Unexpected return type");
}
- CaldavURI wi = findURI(uri + "/" + name,
+ al.add(getNodeInt(uri + "/" + name,
WebdavNsIntf.existanceDoesExist,
- nodeType, true, cal, ei);
-
- if (wi.isCollection()) {
- if (debug) {
- debugMsg("Add child as calendar");
- }
-
- al.add(new CaldavCalNode(wi, sysi, debug));
- } else {
- if (debug) {
- debugMsg("Add child as component");
- }
-
- CaldavComponentNode cnode = new CaldavComponentNode(wi, sysi, debug);
- al.add(cnode);
- }
+ nodeType, true, cal, ei));
}
return al;
Modified: trunk/server/src/org/bedework/caldav/server/CaldavBwNode.java
===================================================================
--- trunk/server/src/org/bedework/caldav/server/CaldavBwNode.java 2007-05-14 19:47:52 UTC (rev 162)
+++ trunk/server/src/org/bedework/caldav/server/CaldavBwNode.java 2007-05-15 14:57:58 UTC (rev 163)
@@ -29,11 +29,14 @@
import org.bedework.davdefs.CaldavTags;
import edu.rpi.cct.webdav.servlet.shared.WebdavException;
+import edu.rpi.cct.webdav.servlet.shared.WebdavNsIntf;
import edu.rpi.cct.webdav.servlet.shared.WebdavNsNode;
import edu.rpi.sss.util.xml.QName;
+import edu.rpi.sss.util.xml.XmlEmit;
import java.util.ArrayList;
import java.util.Collection;
+import java.util.HashMap;
/** Class to represent a caldav node.
*
@@ -42,9 +45,14 @@
public abstract class CaldavBwNode extends WebdavNsNode {
// protected CaldavURI cdURI;
+ private final static HashMap<QName, PropertyTagEntry> propertyNames =
+ new HashMap<QName, PropertyTagEntry>();
+
private final static Collection<QName> supportedReports = new ArrayList<QName>();
static {
+ addPropEntry(propertyNames, CaldavTags.calendarUserAddressSet);
+
supportedReports.add(CaldavTags.calendarMultiget); // Calendar access
supportedReports.add(CaldavTags.calendarQuery); // Calendar access
}
@@ -124,6 +132,45 @@
* ==================================================================== */
/* ====================================================================
+ * Property methods
+ * ==================================================================== */
+
+ /* (non-Javadoc)
+ * @see edu.rpi.cct.webdav.servlet.shared.WebdavNsNode#knownProperty(edu.rpi.sss.util.xml.QName)
+ */
+ public boolean knownProperty(QName tag) {
+ if (propertyNames.get(tag) != null) {
+ return true;
+ }
+
+ // Not ours
+ return super.knownProperty(tag);
+ }
+
+ /* (non-Javadoc)
+ * @see edu.rpi.cct.webdav.servlet.shared.WebdavNsNode#generatePropertyValue(edu.rpi.sss.util.xml.QName, edu.rpi.cct.webdav.servlet.shared.WebdavNsIntf, boolean)
+ */
+ public boolean generatePropertyValue(QName tag,
+ WebdavNsIntf intf,
+ boolean allProp) throws WebdavException {
+ XmlEmit xml = intf.getXmlEmit();
+
+ try {
+ if (tag.equals(CaldavTags.calendarUserAddressSet)) {
+ xml.property(tag, sysi.userToCaladdr(getOwner()));
+ return true;
+ }
+
+ // Not known - try higher
+ return super.generatePropertyValue(tag, intf, allProp);
+ } catch (WebdavException wde) {
+ throw wde;
+ } catch (Throwable t) {
+ throw new WebdavException(t);
+ }
+ }
+
+ /* ====================================================================
* Object methods
* ==================================================================== */
Modified: trunk/server/src/org/bedework/caldav/server/CaldavCalNode.java
===================================================================
--- trunk/server/src/org/bedework/caldav/server/CaldavCalNode.java 2007-05-14 19:47:52 UTC (rev 162)
+++ trunk/server/src/org/bedework/caldav/server/CaldavCalNode.java 2007-05-15 14:57:58 UTC (rev 163)
@@ -61,7 +61,6 @@
import org.bedework.calfacade.RecurringRetrievalMode.Rmode;
import org.bedework.calfacade.util.CalFacadeUtil;
import org.bedework.davdefs.AppleServerTags;
-import org.bedework.davdefs.CaldavDefs;
import org.bedework.davdefs.CaldavTags;
import org.bedework.davdefs.WebdavTags;
import org.bedework.icalendar.IcalTranslator;
@@ -460,7 +459,6 @@
public boolean generatePropertyValue(QName tag,
WebdavNsIntf intf,
boolean allProp) throws WebdavException {
- String ns = tag.getNamespaceURI();
XmlEmit xml = intf.getXmlEmit();
try {
@@ -493,13 +491,6 @@
return true;
}
- /* Deal with webdav properties */
- if ((!ns.equals(CaldavDefs.caldavNamespace) &&
- !ns.equals(CaldavDefs.icalNamespace))) {
- // Not ours
- return super.generatePropertyValue(tag, intf, allProp);
- }
-
if (tag.equals(CaldavTags.calendarDescription)) {
xml.property(tag, cal.getDescription());
@@ -546,7 +537,8 @@
return true;
}
- return false;
+ // Not known - try higher
+ return super.generatePropertyValue(tag, intf, allProp);
} catch (WebdavException wde) {
throw wde;
} catch (Throwable t) {
Modified: trunk/server/src/org/bedework/caldav/server/CaldavComponentNode.java
===================================================================
--- trunk/server/src/org/bedework/caldav/server/CaldavComponentNode.java 2007-05-14 19:47:52 UTC (rev 162)
+++ trunk/server/src/org/bedework/caldav/server/CaldavComponentNode.java 2007-05-15 14:57:58 UTC (rev 163)
@@ -61,7 +61,6 @@
import org.bedework.calfacade.svc.EventInfo;
import org.bedework.calfacade.util.CalFacadeUtil;
-import org.bedework.davdefs.CaldavDefs;
import org.bedework.davdefs.CaldavTags;
import org.bedework.davdefs.WebdavTags;
import org.bedework.icalendar.ComponentWrapper;
Modified: trunk/server/src/org/bedework/caldav/server/CaldavPrincipalNode.java
===================================================================
--- trunk/server/src/org/bedework/caldav/server/CaldavPrincipalNode.java 2007-05-14 19:47:52 UTC (rev 162)
+++ trunk/server/src/org/bedework/caldav/server/CaldavPrincipalNode.java 2007-05-15 14:57:58 UTC (rev 163)
@@ -61,7 +61,6 @@
import edu.rpi.sss.util.xml.XmlEmit;
import org.bedework.calfacade.BwCalendar;
-import org.bedework.davdefs.CaldavDefs;
import org.bedework.davdefs.WebdavTags;
import org.w3c.dom.Element;
More information about the Bedework-commit
mailing list