9 enum CalendarObjectLoadResult {
10 CALENDAROBJECTLOAD_UNITTESTFAIL = -1,
11 CALENDAROBJECTLOAD_OK,
12 CALENDAROBJECTLOAD_MISSING,
13 CALENDAROBJECTLOAD_INVALIDFORMAT,
14 CALENDAROBJECTLOAD_CANNOTOPEN
17 enum CalendarObjectValidResult{
18 CALENDAROBJECTVALID_UNITTESTFAIL = -1,
19 CALENDAROBJECTVALID_OK,
20 CALENDAROBJECTVALID_INVALIDFORMAT
26 CalendarObjectLoadResult LoadFile(std::string LoadFilename);
27 CalendarObjectLoadResult LoadString(std::string *LoadStringData);
28 CalendarObjectValidResult ValidBaseObject();
30 // Setup virtual subroutines for use by objects
31 // inheriting from CalendarObject later on.
33 virtual CalendarObjectValidResult ValidObject() { return CALENDAROBJECTVALID_OK; };
34 virtual void Clear() {};
38 vector<std::string> AttachList;
39 vector<std::string> AttachListTokens;
40 vector<std::string> AttachListEncoding;
41 vector<std::string> AttachListValue;
43 vector<std::string> CategoriesList;
44 vector<std::string> CategoriesListLanguage;
45 vector<std::string> CateogriesListTokens;
47 std::string ClassData;
48 std::string ClassListTokens;
50 vector<std::string> CommentList;
51 vector<std::string> CommentListAltID;
52 vector<std::string> CommentListLanguage;
53 vector<std::string> CommentListTokens;
55 vector<std::string> DescriptionList;
56 vector<std::string> DescriptionListAltID;
57 vector<std::string> DescriptionListLanguage;
58 vector<std::string> DescriptionListTokens;
60 std::string GeographicData;
61 std::string GeographicTokens;
63 std::string LocationData;
64 std::string LocationDataAltID;
66 std::string PercentCompleteData;
67 std::string PercentCompleteTokens;
70 std::string PriorityTokens;
72 vector<std::string> ResourcesData;
73 vector<std::string> ResourcesDataAltID;
74 vector<std::string> ResourcesDataLanguage;
75 vector<std::string> ResourcesDataTokens;
77 std::string StatusData;
78 std::string StatusTokens;
80 std::string SummaryData;
81 std::string SummaryDataAltID;
82 std::string SummaryDataLanguage;
83 std::string SummaryDataTokens;
85 std::string DataTimeEndData;
86 std::string DataTimeEndDataValue;
87 std::string DataTimeEndDataTimeZoneID;
88 std::string DataTimeEndDataTokens;
91 std::string DueDataValue;
92 std::string DueDataTimeZoneID;
93 std::string DueDataTokens;
95 std::string DataTimeStartData;
96 std::string DataTimeStartDataValue;
97 std::string DataTimeStartDataTimeZoneID;
98 std::string DataTimeStartDataTokens;
100 std::string DurationData;
101 std::string DurationDataTokens;
103 vector<std::string> FreeBusyList;
104 vector<std::string> FreeBusyListType;
105 vector<std::string> FreeBusyListTokens;
107 std::string TimeTransparencyData;
108 std::string TimeTransparencyDataTokens;
110 std::string TimeZoneData;
111 std::string TimeZoneDataTokens;
113 vector<std::string> TimeZoneNameList;
114 vector<std::string> TimeZoneNameListLanguage;
115 vector<std::string> TimeZoneNameListTokens;
117 std::string TimeZoneOffsetFromData;
118 std::string TimeZoneOffsetFromDataTokens;
120 std::string TimeZoneOffsetToData;
121 std::string TimeZoneOffsetToDataTokens;
123 std::string TimeZoneURLData;
124 std::string TimeZoneURLTokens;
126 vector<std::string> AttendeeList;
127 vector<std::string> AttendeeListMember;
128 vector<std::string> AttendeeListDelegatedFrom;
129 vector<std::string> AttendeeListDelegatedTo;
130 vector<std::string> AttendeeListRole;
131 vector<std::string> AttendeeListRSVP;
132 vector<std::string> AttendeeListDirectoryEntry;
133 vector<std::string> AttendeeListSentBy;
134 vector<std::string> AttendeeListCommonName;
135 vector<std::string> AttendeeListCalendarUserType;
136 vector<std::string> AttendeeListParticipationStatus;
137 vector<std::string> AttendeeListLanguage;
138 vector<std::string> AttendeeListTokens;
140 vector<std::string> ContactList;
141 vector<std::string> ContactListAltID;
142 vector<std::string> ContactListLanguage;
143 vector<std::string> ContactListTokens;
145 std::string OrganiserData;
146 std::string OrganiserDataCommonName;
147 std::string OrganiserDataDirectoryEntry;
148 std::string OrganiserDataSentByParam;
149 std::string OrganiserDataLanguage;
150 std::string OrganiserDataTokens;
152 std::string RecurranceIDData;
153 std::string RecurranceIDDataTimeZoneParam;
154 std::string RecurranceIDDataValue;
155 std::string RecurranceIDDataTokens;
157 vector<std::string> RelatedToData;
158 vector<std::string> RelatedToDataRelationType;
159 vector<std::string> RelatedToDataTokens;
162 std::string URLDataTokens;
164 vector<std::string> ExcludeDateData;
165 vector<std::string> ExcludeDateDataValue;
166 vector<std::string> ExcludeDateDataTimeZoneParam;
167 vector<std::string> ExcludeDateDataTokens;
169 vector<std::string> RecurranceDateData;
170 vector<std::string> RecurranceDateDataValue;
171 vector<std::string> RecurranceDateDataTimeZoneParam;
172 vector<std::string> RecurranceDateDataTokens;
174 std::string RecurranceRuleData;
175 std::string RecurranceRuleDataFrequency;
176 std::string RecurranceRuleDataCount;
177 std::string RecurranceRuleDataInterval;
178 std::string RecurranceRuleDataUntil;
179 std::string RecurranceRuleDataMonth;
180 std::string RecurranceRuleDataWeekStarting;
181 std::string RecurranceRuleDataWeekByDay;
182 std::string RecurranceRuleDataWeekByMonthDay;
183 std::string RecurranceRuleDataWeekByWeekNumber;
184 std::string RecurranceRuleDataWeekBySetPosition;
186 std::string TriggerDataList;
187 std::string TriggerDataValue;
188 std::string TriggerDataRelatedParam;
189 std::string TriggerDataTokens;
191 std::string DateTimeCreatedData;
192 std::string DateTimeCreatedTokens;
194 std::string DateTimeStampData;
195 std::string DateTimeStampTokens;
197 std::string LastModifiedData;
198 std::string LastModifiedTokens;
200 std::string SequenceData;
201 std::string SequenceTokens;
203 vector<std::string> XTokensData;
204 vector<std::string> XTokensDataTokens;
206 vector<std::string> RequestStatusData;
207 vector<std::string> RequestStatusLanguage;
208 vector<std::string> RequestStatusTokens;
211 // Initial Loading Data.
212 vector<std::string> ObjectName;
213 vector<std::string> ObjectData;
216 virtual void ProcessData() {};