1 #ifndef __OBJECTS_CALENDAROBJECT_CALENDAROBJECT_H__
2 #define __OBJECTS_CALENDAROBJECT_CALENDAROBJECT_H__
12 #include "../../common/text.h"
16 enum CalendarObjectLoadResult {
17 CALENDAROBJECTLOAD_UNITTESTFAIL = -1,
18 CALENDAROBJECTLOAD_OK,
19 CALENDAROBJECTLOAD_MISSING,
20 CALENDAROBJECTLOAD_INVALIDFORMAT,
21 CALENDAROBJECTLOAD_CANNOTOPEN
24 enum CalendarObjectValidResult{
25 CALENDAROBJECTVALID_UNITTESTFAIL = -1,
26 CALENDAROBJECTVALID_OK,
27 CALENDAROBJECTVALID_INVALIDFORMAT
33 CalendarObjectLoadResult LoadFile(string LoadFilename);
34 CalendarObjectLoadResult LoadString(string *LoadStringData);
35 CalendarObjectValidResult ValidBaseObject();
36 void ProcessBaseData();
38 // Setup virtual subroutines for use by objects
39 // inheriting from CalendarObject later on.
41 virtual CalendarObjectValidResult ValidObject() { return CALENDAROBJECTVALID_OK; };
42 virtual void Clear() {};
49 string CalendarScaleData;
50 string CalendarScaleTokens;
53 string UniqueIDTokens;
55 vector<string> AttachList;
56 vector<string> AttachListTokens;
57 vector<string> AttachListEncoding;
58 vector<string> AttachListFormatType;
59 vector<string> AttachListValue;
61 vector<string> CategoriesList;
62 vector<string> CategoriesListLanguage;
63 vector<string> CategoriesListTokens;
66 string ClassDataTokens;
69 string CompletedDataTokens;
71 vector<string> CommentList;
72 vector<string> CommentListAltRep;
73 vector<string> CommentListLanguage;
74 vector<string> CommentListTokens;
76 vector<string> DescriptionList;
77 vector<string> DescriptionListAltRep;
78 vector<string> DescriptionListLanguage;
79 vector<string> DescriptionListTokens;
81 string GeographicData;
82 string GeographicTokens;
85 string LocationDataAltRep;
86 string LocationDataLanguage;
87 string LocationDataTokens;
89 string PercentCompleteData;
90 string PercentCompleteTokens;
92 int PriorityData = -1;
93 string PriorityTokens;
95 vector<string> ResourcesData;
96 vector<string> ResourcesDataAltRep;
97 vector<string> ResourcesDataLanguage;
98 vector<string> ResourcesDataTokens;
101 string StatusLanguage;
105 string SummaryDataAltRep;
106 string SummaryDataLanguage;
107 string SummaryDataTokens;
109 string DateTimeEndData;
110 string DateTimeEndDataValue;
111 string DateTimeEndDataTimeZoneID;
112 string DateTimeEndDataTokens;
116 string DueDataTimeZoneID;
117 string DueDataTokens;
119 string DateTimeStartData;
120 string DateTimeStartDataValue;
121 string DateTimeStartDataTimeZoneID;
122 string DateTimeStartDataTokens;
125 string DurationDataTokens;
127 vector<string> FreeBusyList;
128 vector<string> FreeBusyListType;
129 vector<string> FreeBusyListTokens;
131 string TimeTransparencyData;
132 string TimeTransparencyDataTokens;
135 string TimeZoneDataTokens;
137 vector<string> TimeZoneNameList;
138 vector<string> TimeZoneNameListLanguage;
139 vector<string> TimeZoneNameListTokens;
141 string TimeZoneOffsetFromData;
142 string TimeZoneOffsetFromDataTokens;
144 string TimeZoneOffsetToData;
145 string TimeZoneOffsetToDataTokens;
147 string TimeZoneURLData;
148 string TimeZoneURLTokens;
150 vector<string> AttendeeList;
151 vector<string> AttendeeListMember;
152 vector<string> AttendeeListDelegatedFrom;
153 vector<string> AttendeeListDelegatedTo;
154 vector<string> AttendeeListRole;
155 vector<string> AttendeeListRSVP;
156 vector<string> AttendeeListDirectoryEntry;
157 vector<string> AttendeeListSentBy;
158 vector<string> AttendeeListCommonName;
159 vector<string> AttendeeListCalendarUserType;
160 vector<string> AttendeeListParticipationStatus;
161 vector<string> AttendeeListLanguage;
162 vector<string> AttendeeListTokens;
164 vector<string> ContactList;
165 vector<string> ContactListAltRep;
166 vector<string> ContactListLanguage;
167 vector<string> ContactListTokens;
169 string OrganiserData;
170 string OrganiserDataCommonName;
171 string OrganiserDataDirectoryEntry;
172 string OrganiserDataSentByParam;
173 string OrganiserDataLanguage;
174 string OrganiserDataTokens;
176 string RecurranceIDData;
177 string RecurranceIDDataTimeZoneParam;
178 string RecurranceIDDataRangeParam;
179 string RecurranceIDDataValue;
180 string RecurranceIDDataTokens;
182 vector<string> RelatedToData;
183 vector<string> RelatedToDataRelationType;
184 vector<string> RelatedToDataTokens;
187 string URLDataTokens;
189 vector<string> ExcludeDateData;
190 vector<string> ExcludeDateDataValue;
191 vector<string> ExcludeDateDataTimeZoneParam;
192 vector<string> ExcludeDateDataTokens;
194 vector<string> RecurranceDateData;
195 vector<string> RecurranceDateDataValue;
196 vector<string> RecurranceDateDataTimeZoneParam;
197 vector<string> RecurranceDateDataTokens;
199 string RecurranceRuleData;
200 string RecurranceRuleDataTokens;
202 string TriggerDataList;
203 string TriggerDataValue;
204 string TriggerDataRelatedParam;
205 string TriggerDataTokens;
207 string DateTimeCreatedData;
208 string DateTimeCreatedTokens;
210 string DateTimeStampData;
211 string DateTimeStampTokens;
213 string LastModifiedData;
214 string LastModifiedTokens;
216 int SequenceData = -1;
217 string SequenceTokens;
219 vector<string> XTokensData;
220 vector<string> XTokensDataTokens;
222 vector<string> RequestStatusData;
223 vector<string> RequestStatusLanguage;
224 vector<string> RequestStatusTokens;
227 // Initial Loading Data.
228 vector<string> ObjectName;
229 vector<string> ObjectData;
232 virtual void ProcessData() {};