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 {
  

Reply via email to