Require a simple java class that interfaces to _any_calDav_ compatible calendar, but specifically compatible with _Google_Calendar_. Simple interface required only. Just demonstrate that the interface works via a jsp page, where I can enter in the credentials, and then see a text dump of the data as per the structures below.
Something like
class Calendar {
String calendarName;// plus any other general data that comes back for a given calendar from google
Calendar getInstance(CalDAVCredentials?) {
// get a calendar Instance for given CalDAV credentials... Feel free to expand on what is required.
}
boolean addEvent(Event); //true if success,
Event getEvent(EventID); //return the event as below
boolean deleteEvent(EventID); //true if success,
boolean saveEventChanges(Event); // eg save date/time change or description changes direct to google
Iterator getEvents(date start, date finish) // retrieve Event data from google calendar for the period indicated, including repeat events
}
class Event
{
String googleEventID;
date eventStartDateTime;
date eventFinishDateTime;
date lastModifiedTime; //last time that this was modified in google, needed for syncing
XXX duration;
String frequency; //eg daily, weekly, monthly
String eventTitle;
String eventDetails
//plus other common event data
}