xlawrence    2004/12/08 17:08:29 CET

  Modified files:
    src/java/org/jahia/suite/calendar/test 
                                           DummyCalendarServer.java 
  Log:
  Updated dummy server which now includes a GUI
  
  Revision  Changes    Path
  1.5       +72 -48    
uwcal_JSR168/src/java/org/jahia/suite/calendar/test/DummyCalendarServer.java
http://jahia.mine.nu:8080/cgi-bin/cvsweb.cgi/uwcal_JSR168/src/java/org/jahia/suite/calendar/test/DummyCalendarServer.java.diff?r1=1.4&r2=1.5&f=h
  
  
  
  Index: DummyCalendarServer.java
  ===================================================================
  RCS file: 
/home/cvs/repository/uwcal_JSR168/src/java/org/jahia/suite/calendar/test/DummyCalendarServer.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- DummyCalendarServer.java  23 Nov 2004 10:30:19 -0000      1.4
  +++ DummyCalendarServer.java  8 Dec 2004 16:08:29 -0000       1.5
  @@ -54,6 +54,8 @@
   import org.jahia.suite.calendar.framework.message.UpdateCalendarRequest;
   import org.jahia.suite.calendar.framework.message.MessageListener;
   
  +import java.util.Properties;
  +
   import org.apache.log4j.Logger;
   
   /**
  @@ -63,7 +65,7 @@
    *
    * @author  Xavier Lawrence
    */
  -public class DummyCalendarServer implements MessageListener{
  +public class DummyCalendarServer implements MessageListener {
       
       static Logger log = Logger.getLogger(DummyCalendarServer.class);
       
  @@ -71,53 +73,42 @@
       
       private JMSAgent agent;
       private Calendar calendar;
  +    private DummyCalServerGUI gui;
  +    
  +    private final String data0 = 
  +    "VERSION:2.0\n"+
  +    "X-WR-CALNAME:UK Holidays\n"+
  +    "PRODID:-//Apple Computer\\, Inc//iCal 1.5//EN\n"+
  +    "X-WR-RELCALID:9DE52D32-D020-11D8-9530-000A958A3252\n"+
  +    "X-WR-TIMEZONE:Europe/Paris\n"+
  +    "CALSCALE:GREGORIAN\n"+
  +    "METHOD:PUBLISH";
       
       private final String data1 =
       "BEGIN:VEVENT\n"+
  -    "ORGANIZER;CN=TMS -- Calendar Publisher:MAILTO:[EMAIL PROTECTED]"+
  -    "DTSTART:20030620T220000Z\n"+
  -    "DTEND:20030620T220000Z\n"+
  -    "TRANSP:TRANSPARENT\n"+
  -    "SEQUENCE:0\n"+
  -    "UID:TPACTIDSTREAMTASKID\n"+
  -    "DTSTAMP:20030410T113400Z\n"+
  -    "CATEGORIES;LANGUAGE=en;ENCODING=QUOTED-PRINTABLE:TMS Dates\n"+
  -    "DESCRIPTION;LANGUAGE=en;ENCODING=QUOTED-PRINTABLE:View the status of 
this ACT 
ID:=0Ahttp://xxxx.xxxx.xxxx.com/public/view_detailed_status.php?act_id=3DACTID&stream=3DSTREAM&task_id=3DTASKID=0A\n"+
  -    "SUMMARY;LANGUAGE=en;ENCODING=QUOTED-PRINTABLE:TP for Act ID XXXXX -- 
Not important : Stream -- Task ID\n"+
  -    "PRIORITY:5\n"+
  -    "CLASS:PUBLIC\n"+
  -    "URL:http://xxxx.xxxx.xxxx.com/\n"+
  -    "STATUS:CONFIRMED\n"+
  -    "BEGIN:VALARM\n"+
  -    "ACTION:DISPLAY\n"+
  -    "TRIGGER:-PT2880M\n"+
  -    "DESCRIPTION:TP for Act ID XXXXX -- Vx.x Not important : Stream -- Task 
ID\n"+
  -    "SUMMARY:TP for Act ID XXXXX -- Vx.x Not important : Stream -- Task 
ID\n"+
  -    "DURATION:3\n"+
  -    "REPEAT:3\n"+
  -    "END:VALARM\n"+
  +    "DTSTART;VALUE=DATE:20020101\n"+
  +    "DTEND;VALUE=DATE:20020102\n"+
  +    "SUMMARY:Dummy SyncItem 1 (data1)\n"+
  +    "UID:DUMMY-SYNC-ITEM-20-FOR-TESTING\n"+
  +    "DTSTAMP:20040707T140415Z\n"+
  +    "RRULE:FREQ=YEARLY;INTERVAL=1;BYMONTH=2\n"+
       "END:VEVENT";
       
       private final String data2 =
       "BEGIN:VEVENT\n"+
  -    "SEQUENCE:5\n"+
  -    "DTSTART;TZID=US/Pacific:20021028T140000\n"+
  -    "DTSTAMP:20021028T011706Z\n"+
  -    "SUMMARY:Coffee with Jason\n"+
  -    "UID:EC9439B1-FF65-11D6-9973-003065F99D04\n"+
  -    "DTEND;TZID=US/Pacific:20021028T150000\n"+
  -    "BEGIN:VALARM\n"+
  -    "TRIGGER;VALUE=DURATION:-P1D\n"+
  -    "ACTION:DISPLAY\n"+
  -    "DESCRIPTION:Event reminder\n"+
  -    "END:VALARM\n"+
  +    "DTSTART;VALUE=DATE:20020101\n"+
  +    "DTEND;VALUE=DATE:20020102\n"+
  +    "SUMMARY:Dummy SyncItem 2 (data2)\n"+
  +    "UID:DUMMY-SYNC-ITEM-30-FOR-TESTING\n"+
  +    "DTSTAMP:20040707T140415Z\n"+
  +    "RRULE:FREQ=YEARLY;INTERVAL=1;BYMONTH=3\n"+
       "END:VEVENT";
       
       private final String data3 =
       "BEGIN:VEVENT\n"+
       "DTSTART;VALUE=DATE:20030418\n"+
       "DTEND;VALUE=DATE:20030419\n"+
  -    "SUMMARY:Good Friday\n"+
  +    "SUMMARY:Dummy SyncItem 3 (data3)\n"+
       "UID:9DE4B99A-D020-11D8-9530-000A958A3252\n"+
       "DTSTAMP:20040707T140415Z\n"+
       "END:VEVENT";
  @@ -136,10 +127,11 @@
        * Creates the calendar instance for the test
        */
       public void start() {
  -        SyncEvent[] events = new SyncEvent[3];
  -        events[0] = new SyncEvent("key1", data1.getBytes(), 
SyncEvent.UNKNOWN);
  -        events[1] = new SyncEvent("key2", data2.getBytes(), 
SyncEvent.UNKNOWN);
  -        events[2] = new SyncEvent("key3", data3.getBytes(), 
SyncEvent.UNKNOWN);
  +        SyncEvent[] events = new SyncEvent[4];
  +        events[0] = new SyncEvent("key0", data0.getBytes(), 
SyncEvent.UNKNOWN);
  +        events[1] = new SyncEvent("key1", data1.getBytes(), 
SyncEvent.UNKNOWN);
  +        events[2] = new SyncEvent("key2", data2.getBytes(), 
SyncEvent.UNKNOWN);
  +        events[3] = new SyncEvent("key3", data3.getBytes(), 
SyncEvent.UNKNOWN);
           calendar = new Calendar(events);
       }
       
  @@ -151,10 +143,9 @@
           // GetCalendarRequests
           if (msg instanceof GetCalendarRequest) {
               GetCalendarRequest req = (GetCalendarRequest)msg;
  -            log.info(req.getType()+": 
"+req.getUserName()+"-"+req.getDeviceID());
  +            log.info("GetCalendarRequest: 
"+req.getUserName()+"-"+req.getDeviceID());
               GetCalendarRequestResponse resp = (GetCalendarRequestResponse)
               req.makeResponse(newID(), null, calendar);
  -            log.info(resp);
               agent.sendResponse(resp, req);
               
               // UpdateCalendarRequests
  @@ -162,37 +153,52 @@
               UpdateCalendarRequest req = (UpdateCalendarRequest)msg;
               Response resp;
               try {
  -                log.info(req);
  +                log.info("UpdateCalendarRequest: 
"+req.getOperations().length+ 
  +                " operations");
                   SyncOperation[] ops = req.getOperations();
                   for (int i=0; i<ops.length; i++) {
                       SyncOperation op = ops[i];
                       if (op.getType().equals(SyncOperation.ADD)) {
  +                        String key = op.getEvent().getKey();
  +                        log.info("ADD: "+key);
                           calendar.addEvent(op.getEvent());
  +                        gui.addItem(key);
                           
                       } else if (op.getType().equals(SyncOperation.MODIFY)) {
  +                        String key = op.getEvent().getKey();
  +                        log.info("MODIFY: "+key);
                           calendar.replaceEvent(op.getEvent());
                           
                       } else if (op.getType().equals(SyncOperation.DELETE)) {
  +                        String key = op.getEvent().getKey();
  +                        log.info("DELETE: "+key);
                           calendar.removeEvent(op.getEvent());
  +                        gui.removeItem(key);
                       }
                   }
  +                
                   resp = req.makeResponse(newID(), 
UpdateCalendarRequestResponse.OK);
                   log.info(resp);
                   agent.sendResponse(resp, req);
  -            } catch (Exception e) {
  +                
  +                for (int i=0; i<calendar.getEvents().length; i++) {
  +                    calendar.getEvents()[i].setState(SyncEvent.SYNCHRONIZED);
  +                }
  +                
  +            } catch (Exception e) {                
  +                e.printStackTrace();
                   resp = req.makeResponse(newID(), 
UpdateCalendarRequestResponse.FAILED);
  -                log.info(resp);
                   agent.sendResponse(resp, req);
  -                log.error(e);
  +                log.error(e.getMessage());               
               }
               
               // GetGUIDRequests
           } else if (msg instanceof GetGUIDRequest) {
  +            log.info("GetGUIDRequest");
               GetGUIDRequest req = (GetGUIDRequest)msg;
  -            GUID newGUID = new GUID("localhost", newID());
  +            GUID newGUID = new GUID("key_", calendar.getEvents().length);
               GetGUIDRequestResponse resp = (GetGUIDRequestResponse)
               req.makeResponse(newID(), newGUID);
  -            log.info(resp);
               agent.sendResponse(resp, req);
               
           } else {
  @@ -201,6 +207,20 @@
       }
       
       /**
  +     *
  +     */
  +    public Calendar getCalendar() {
  +        return calendar;
  +    }
  +    
  +    /**
  +     *
  +     */
  +    public void setState(String key, int state) {
  +        calendar.getEvent(key).setState(state);
  +    }
  +    
  +    /**
        * Generates an auto_increment int for IDs
        */
       protected synchronized static int newID() {
  @@ -216,9 +236,13 @@
        * @param args the command line arguments
        */
       public static void main(String[] args) {
  +        DummyCalServerGUI.setLookAndFeel();
           DummyCalendarServer app = new DummyCalendarServer();
           app.start();
  +        app.gui = new DummyCalServerGUI(app);
  +        app.gui.pack();
  +        app.gui.setFrameLocation();
  +        app.gui.show();
           log.info("Waiting for requests...");
       }
  -    
   }
  

Reply via email to