xlawrence 2005/01/04 10:56:24 CET
Modified files:
src/java/org/jahia/suite/calendar/calServer
UwCalConnector.java
Log:
added VEvent handling for modyfing and deleting an event on uwCal
Revision Changes Path
1.10 +28 -20
uwcal_JSR168/src/java/org/jahia/suite/calendar/calServer/UwCalConnector.java
http://jahia.mine.nu:8080/cgi-bin/cvsweb.cgi/uwcal_JSR168/src/java/org/jahia/suite/calendar/calServer/UwCalConnector.java.diff?r1=1.9&r2=1.10&f=h
Index: UwCalConnector.java
===================================================================
RCS file:
/home/cvs/repository/uwcal_JSR168/src/java/org/jahia/suite/calendar/calServer/UwCalConnector.java,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- UwCalConnector.java 22 Dec 2004 15:28:58 -0000 1.9
+++ UwCalConnector.java 4 Jan 2005 09:56:24 -0000 1.10
@@ -101,29 +101,13 @@
for (int i=0; i<operations.length; i++) {
SyncOperation temp = operations[i];
String type = temp.getType();
- if (SyncOperation.ADD.equals(type) ||
SyncOperation.MODIFY.equals(type)) {
-
- final String eventString = new
String(temp.getEvent().getContent());
-
- StringBuffer buffer = new StringBuffer();
- buffer.append(Calendar.BEGIN);
- buffer.append(':');
- buffer.append(Calendar.VCALENDAR);
- buffer.append("\r\n");
- buffer.append(eventString);
- buffer.append(Calendar.END);
- buffer.append(':');
- buffer.append(Calendar.VCALENDAR);
- buffer.append("\r\n");
-
- CalendarBuilder builder = new CalendarBuilder();
- Calendar calendar = builder.build(new
StringReader(buffer.toString()));
-
- VEvent vEvent =
(VEvent)calendar.getComponents().iterator().next();
+ final String eventString = new
String(temp.getEvent().getContent());
+ final VEvent vEvent = getVEventFromString(eventString);
+ if (SyncOperation.ADD.equals(type) ||
SyncOperation.MODIFY.equals(type)) {
calServer.updateEvent(vEvent);
} else if (SyncOperation.DELETE.equals(type)) {
- // delete the event
+ calServer.deleteEvent(vEvent);
} else {
throw new SyncException("Unknown operation type: "+type);
@@ -151,6 +135,30 @@
}
/**
+ * This method returns a VEvent object constructed from a String
+ * @param eventString The String object of the Vevent
+ * @return The VEvent object derived from the given String
+ */
+ private VEvent getVEventFromString(String eventString) {
+
+ StringBuffer buffer = new StringBuffer();
+ buffer.append(Calendar.BEGIN);
+ buffer.append(':');
+ buffer.append(Calendar.VCALENDAR);
+ buffer.append("\r\n");
+ buffer.append(eventString);
+ buffer.append(Calendar.END);
+ buffer.append(':');
+ buffer.append(Calendar.VCALENDAR);
+ buffer.append("\r\n");
+
+ CalendarBuilder builder = new CalendarBuilder();
+ Calendar calendar = builder.build(new
StringReader(buffer.toString()));
+
+ return (VEvent)calendar.getComponents().iterator().next();
+ }
+
+ /**
* @see Storable
*/
public void beginTransaction() throws SyncException {