00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef INCL_ICALENDAR_EVENT
00021 #define INCL_ICALENDAR_EVENT
00022
00024 #include "base/util/ArrayElement.h"
00025 #include "vocl/VObject.h"
00026 #include "vocl/iCalendar/iCalProperty.h"
00027
00028 class Event: public VObject, public ArrayElement {
00029
00030 private:
00031 iCalProperty* classEvent;
00032 iCalProperty* created;
00033 iCalProperty* description;
00034 iCalProperty* dtStart;
00035 iCalProperty* geo;
00036 iCalProperty* lastMod;
00037 iCalProperty* location;
00038 iCalProperty* organizer;
00039 iCalProperty* priority;
00040 iCalProperty* dtStamp;
00041 iCalProperty* seq;
00042 iCalProperty* status;
00043 iCalProperty* summary;
00044 iCalProperty* transp;
00045 iCalProperty* uid;
00046 iCalProperty* url;
00047 iCalProperty* recurID;
00048 iCalProperty* dtEnd;
00049 iCalProperty* duration;
00050 ArrayList* attach;
00051 ArrayList* attendee;
00052 ArrayList* categories;
00053 ArrayList* comment;
00054 ArrayList* contact;
00055 ArrayList* exDate;
00056 ArrayList* exRule;
00057 ArrayList* rStatus;
00058 ArrayList* related;
00059 ArrayList* resources;
00060 ArrayList* rDate;
00061 ArrayList* rRule;
00062 ArrayList* xProp;
00063 void set(iCalProperty** oldProperty, iCalProperty& newProperty);
00064 iCalProperty* getiCalPropertyFromVProperty(VProperty* vp);
00065 VProperty* getVPropertyFromiCalProperty(WCHAR* name, iCalProperty* prop);
00066
00067 public:
00068
00069 Event();
00070 ~Event();
00071 WCHAR* toString();
00072 void setClass(iCalProperty& a);
00073 void setCreated(iCalProperty& a);
00074 void setDescription(iCalProperty& a);
00075 void setDtStart(iCalProperty& a);
00076 void setGeo(iCalProperty& a);
00077 void setLastMod(iCalProperty& a);
00078 void setLocation(iCalProperty& a);
00079 void setOrganizer(iCalProperty& a);
00080 void setPriority(iCalProperty& a);
00081 void setDtStamp(iCalProperty& a);
00082 void setSequence(iCalProperty& a);
00083 void setStatus(iCalProperty& a);
00084 void setSummary(iCalProperty& a);
00085 void setTransport(iCalProperty& a);
00086 void setUid(iCalProperty& a);
00087 void setUrl(iCalProperty& a);
00088 void setRecurID(iCalProperty& a);
00089 void setDtEnd(iCalProperty& a);
00090 void setDuration(iCalProperty& a);
00091 void setAttach(ArrayList& list);
00092 void setAttendee(ArrayList& list);
00093 void setCategories(ArrayList& list);
00094 void setComment(ArrayList& list);
00095 void setContact(ArrayList& list);
00096 void setExDate(ArrayList& list);
00097 void setExRule(ArrayList& list);
00098 void setRStatus(ArrayList& list);
00099 void setRelated(ArrayList& list);
00100 void setResources(ArrayList& list);
00101 void setRDate(ArrayList& list);
00102 void setRRule(ArrayList& list);
00103 void setXProp(ArrayList& list);
00104
00105 iCalProperty* getClass();
00106 iCalProperty* getCreated();
00107 iCalProperty* getDescription();
00108 iCalProperty* getDtStart();
00109 iCalProperty* getGeo();
00110 iCalProperty* getLastMod();
00111 iCalProperty* getLocation();
00112 iCalProperty* getOrganizer();
00113 iCalProperty* getPriority();
00114 iCalProperty* getDtStamp();
00115 iCalProperty* getSequence();
00116 iCalProperty* getStatus();
00117 iCalProperty* getSummary();
00118 iCalProperty* getTransport();
00119 iCalProperty* getUid();
00120 iCalProperty* getUrl();
00121 iCalProperty* getRecurID();
00122 iCalProperty* getDtEnd();
00123 iCalProperty* getDuration();
00124 ArrayList* getAttach();
00125 ArrayList* getAttendee();
00126 ArrayList* getCategories();
00127 ArrayList* getComment();
00128 ArrayList* getContact();
00129 ArrayList* getExDate();
00130 ArrayList* getExRule();
00131 ArrayList* getRStatus();
00132 ArrayList* getRelated();
00133 ArrayList* getResources();
00134 ArrayList* getRDate();
00135 ArrayList* getRRule();
00136 ArrayList* getXProp();
00137
00138 ArrayElement* clone();
00139
00140 };
00141
00143 #endif