Tizen 2.1 base
[platform/core/system/sync-agent.git] / src / fw-plugins / common-public / vcalendar / include / in_datastore_info_vcalendar.h
1 /*
2  * sync-agent
3  * Copyright (c) 2012 Samsung Electronics Co., Ltd.
4  *
5  * Licensed under the Apache License, Version 2.0 (the License);
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  *     http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */
17
18 #ifndef IN_DATASTORE_INFO_VCALENDAR_H_
19 #define IN_DATASTORE_INFO_VCALENDAR_H_
20
21 #define VCALENDAR_TYPE                                          "text/x-vcalendar"
22 #define VCALENDAR_VERSION                                       "1.0"
23
24 typedef enum {
25         VCALENDAR_FIELD_BEGIN = 10,
26         VCALENDAR_FIELD_END,
27         VCALENDAR_FIELD_VERSION,
28         VCALENDAR_FIELD_AALARM,
29         VCALENDAR_FIELD_ACTION,
30         VCALENDAR_FIELD_ATTACH,
31         VCALENDAR_FIELD_ATTENDEE,
32         VCALENDAR_FIELD_CALSCALE,
33         VCALENDAR_FIELD_CATEGORIES,
34         VCALENDAR_FIELD_CLASS,
35         VCALENDAR_FIELD_COMMENT,
36         VCALENDAR_FIELD_COMPLETED,
37         VCALENDAR_FIELD_CONTACT,
38         VCALENDAR_FIELD_CREATED,
39         VCALENDAR_FIELD_DALARM,
40         VCALENDAR_FIELD_DAYLIGHT,
41         VCALENDAR_FIELD_DCREATED,
42         VCALENDAR_FIELD_DESCRIPTION,
43         VCALENDAR_FIELD_DTEND,
44         VCALENDAR_FIELD_DTSTAMP,
45         VCALENDAR_FIELD_DTSTART,
46         VCALENDAR_FIELD_DUE,
47         VCALENDAR_FIELD_DURATION,
48         VCALENDAR_FIELD_EXDATE,
49         VCALENDAR_FIELD_EXRULE,
50         VCALENDAR_FIELD_FREEBUSY,
51         VCALENDAR_FIELD_GEO,
52         VCALENDAR_FIELD_LAST_MODIFIED,
53         VCALENDAR_FIELD_LOCATION,
54         VCALENDAR_FIELD_MALARM,
55         VCALENDAR_FIELD_METHOD,
56         VCALENDAR_FIELD_ORGANIZER,
57         VCALENDAR_FIELD_PALARM,
58         VCALENDAR_FIELD_PERCENT_COMPLETE,
59         VCALENDAR_FIELD_PRIORITY,
60         VCALENDAR_FIELD_PRODID,
61         VCALENDAR_FIELD_RDATE,
62         VCALENDAR_FIELD_RECURRENCE_ID,
63         VCALENDAR_FIELD_RELATED_TO,
64         VCALENDAR_FIELD_REPEAT,
65         VCALENDAR_FIELD_REQUEST_STATUS,
66         VCALENDAR_FIELD_RESOURCES,
67         VCALENDAR_FIELD_RNUM,
68         VCALENDAR_FIELD_RRULE,
69         VCALENDAR_FIELD_SEQUENCE,
70         VCALENDAR_FIELD_STANDARD,
71         VCALENDAR_FIELD_STATUS,
72         VCALENDAR_FIELD_SUMMARY,
73         VCALENDAR_FIELD_TRANSP,
74         VCALENDAR_FIELD_TRIGGER,
75         VCALENDAR_FIELD_TZ,
76         VCALENDAR_FIELD_TZID,
77         VCALENDAR_FIELD_TZNAME,
78         VCALENDAR_FIELD_TZOFFSETFROM,
79         VCALENDAR_FIELD_TZOFFSETTO,
80         VCALENDAR_FIELD_TZURL,
81         VCALENDAR_FIELD_URL,
82         VCALENDAR_FIELD_UID,
83         VCALENDAR_FIELD_VALARM,
84         VCALENDAR_FIELD_VCALENDAR,
85         VCALENDAR_FIELD_VEVENT,
86         VCALENDAR_FIELD_VFREEBUSY,
87         VCALENDAR_FIELD_VJOURNAL,
88         VCALENDAR_FIELD_VTIMEZONE,
89         VCALENDAR_FIELD_VTODO,
90         VCALENDAR_FIELD_X_FUNAMBOL_ALLDAY,
91
92 } vcalendadr_field_e;
93
94 typedef enum {
95         VCALENDAR_FIELD_BEGIN_END_VCALENDAR = 100,
96         VCALENDAR_FIELD_BEGIN_END_VEVENT,
97         VCALENDAR_FIELD_BEGIN_END_VTODO,
98         VCALENDAR_FIELD_BEGIN_END_VJOURNAL,
99         VCALENDAR_FIELD_BEGIN_END_VFREEBUSY,
100         VCALENDAR_FIELD_BEGIN_END_VTIMEZONE,
101         VCALENDAR_FIELD_BEGIN_END_VALARM,
102         VCALENDAR_FIELD_BEGIN_END_STANDARD,
103         VCALENDAR_FIELD_BEGIN_END_DAYLIGHT,
104
105 } vcalendar_field_begin_end_sub_e;
106
107 typedef enum {
108         VCALENDAR_FIELD_CATEGORIES_APPOINTMENT = 200,
109         VCALENDAR_FIELD_CATEGORIES_HOLIDAY,
110         VCALENDAR_FIELD_CATEGORIES_BUSINESS,
111         VCALENDAR_FIELD_CATEGORIES_SPECIAL_OCCASION,
112         VCALENDAR_FIELD_CATEGORIES_IMPORTANT,
113         VCALENDAR_FIELD_CATEGORIES_BIRTHDAY,
114         VCALENDAR_FIELD_CATEGORIES_MISSCELLANEOUS,
115
116 } vcalendadr_field_categories_sub_e;
117
118 typedef enum {
119         VCALENDAR_FIELD_STATUS_NEEDS_ACTION = 300,
120         VCALENDAR_FIELD_STATUS_COMPLETED,
121
122 } VCALENDAR_FIELD_STATUS_SUB;
123
124 typedef struct vcalendar_field_list vcalendar_field_list_s;
125 struct vcalendar_field_list {
126         int field_enum;
127         char *field_name;
128 };
129
130 static vcalendar_field_list_s vcalendar_field_list[] = {
131         {VCALENDAR_FIELD_BEGIN, "BEGIN"},
132         {VCALENDAR_FIELD_END, "END"},
133         {VCALENDAR_FIELD_VERSION, "VERSION"},
134         {VCALENDAR_FIELD_AALARM, "AALARM"},
135         {VCALENDAR_FIELD_ACTION, "ACTION"},
136         {VCALENDAR_FIELD_ATTACH, "ATTACH"},
137         {VCALENDAR_FIELD_ATTENDEE, "ATTENDEE"},
138         {VCALENDAR_FIELD_CALSCALE, "CALSCALE"},
139         {VCALENDAR_FIELD_CATEGORIES, "CATEGORIES"},
140         {VCALENDAR_FIELD_CLASS, "CLASS"},
141         {VCALENDAR_FIELD_COMMENT, "COMMENT"},
142         {VCALENDAR_FIELD_COMPLETED, "COMPLETED"},
143         {VCALENDAR_FIELD_CONTACT, "CONTACT"},
144         {VCALENDAR_FIELD_CREATED, "CREATED"},
145         {VCALENDAR_FIELD_DALARM, "DALARM"},
146         {VCALENDAR_FIELD_DAYLIGHT, "DAYLIGHT"},
147         {VCALENDAR_FIELD_DCREATED, "DCREATED"},
148         {VCALENDAR_FIELD_DESCRIPTION, "DESCRIPTION"},
149         {VCALENDAR_FIELD_DTEND, "DTEND"},
150         {VCALENDAR_FIELD_DTSTAMP, "DTSTAMP"},
151         {VCALENDAR_FIELD_DTSTART, "DTSTART"},
152         {VCALENDAR_FIELD_DUE, "DUE"},
153         {VCALENDAR_FIELD_DURATION, "DURATION"},
154         {VCALENDAR_FIELD_EXDATE, "EXDATE"},
155         {VCALENDAR_FIELD_EXRULE, "EXRULE"},
156         {VCALENDAR_FIELD_FREEBUSY, "FREEBUSY"},
157         {VCALENDAR_FIELD_GEO, "GEO"},
158         {VCALENDAR_FIELD_LAST_MODIFIED, "LAST-MODIFIED"},
159         {VCALENDAR_FIELD_LOCATION, "LOCATION"},
160         {VCALENDAR_FIELD_MALARM, "MALARM"},
161         {VCALENDAR_FIELD_METHOD, "METHOD"},
162         {VCALENDAR_FIELD_ORGANIZER, "ORGANIZER"},
163         {VCALENDAR_FIELD_PALARM, "PALARM"},
164         {VCALENDAR_FIELD_PERCENT_COMPLETE, "PERCENT-COMPLETE"},
165         {VCALENDAR_FIELD_PRIORITY, "PRIORITY"},
166         {VCALENDAR_FIELD_PRODID, "PRODID"},
167         {VCALENDAR_FIELD_RDATE, "RDATE"},
168         {VCALENDAR_FIELD_RECURRENCE_ID, "RECURRENCE-ID"},
169         {VCALENDAR_FIELD_RELATED_TO, "RELATED-TO"},
170         {VCALENDAR_FIELD_REPEAT, "REPEAT"},
171         {VCALENDAR_FIELD_REQUEST_STATUS, "REQUEST-STATUS"},
172         {VCALENDAR_FIELD_RESOURCES, "RESOURCES"},
173         {VCALENDAR_FIELD_RNUM, "RNUM"},
174         {VCALENDAR_FIELD_RRULE, "RRULE"},
175         {VCALENDAR_FIELD_SEQUENCE, "SEQUENCE"},
176         {VCALENDAR_FIELD_STANDARD, "STANDARD"},
177         {VCALENDAR_FIELD_STATUS, "STATUS"},
178         {VCALENDAR_FIELD_SUMMARY, "SUMMARY"},
179         {VCALENDAR_FIELD_TRANSP, "TRANSP"},
180         {VCALENDAR_FIELD_TRIGGER, "TRIGGER"},
181         {VCALENDAR_FIELD_TZ, "TZ"},
182         {VCALENDAR_FIELD_TZID, "TZID"},
183         {VCALENDAR_FIELD_TZNAME, "TZNAME"},
184         {VCALENDAR_FIELD_TZOFFSETFROM, "TZOFFSETFROM"},
185         {VCALENDAR_FIELD_TZOFFSETTO, "TZOFFSETTO"},
186         {VCALENDAR_FIELD_TZURL, "TZURL"},
187         {VCALENDAR_FIELD_URL, "URL"},
188         {VCALENDAR_FIELD_UID, "UID"},
189         {VCALENDAR_FIELD_VALARM, "VALARM"},
190         {VCALENDAR_FIELD_VCALENDAR, "VCALENDAR"},
191         {VCALENDAR_FIELD_VEVENT, "VEVENT"},
192         {VCALENDAR_FIELD_VFREEBUSY, "VFREEBUSY"},
193         {VCALENDAR_FIELD_VJOURNAL, "VJOURNAL"},
194         {VCALENDAR_FIELD_VTIMEZONE, "VTIMEZONE"},
195         {VCALENDAR_FIELD_VTODO, "VTODO"},
196         {VCALENDAR_FIELD_X_FUNAMBOL_ALLDAY, "X-FUNAMBOL-ALLDAY"}
197 };
198
199 static vcalendar_field_list_s vcalendar_field_list_begin_end[] = {
200         {VCALENDAR_FIELD_BEGIN_END_VCALENDAR, "VCALENDAR"},
201         {VCALENDAR_FIELD_BEGIN_END_VEVENT, "VEVENT"},
202         {VCALENDAR_FIELD_BEGIN_END_VTODO, "VTODO"},
203         {VCALENDAR_FIELD_BEGIN_END_VJOURNAL, "VJOURNAL"},
204         {VCALENDAR_FIELD_BEGIN_END_VFREEBUSY, "VFREEBUSY"},
205         {VCALENDAR_FIELD_BEGIN_END_VTIMEZONE, "VTIMEZONE"},
206         {VCALENDAR_FIELD_BEGIN_END_VALARM, "VALARM"},
207         {VCALENDAR_FIELD_BEGIN_END_STANDARD, "STANDARD"},
208         {VCALENDAR_FIELD_BEGIN_END_DAYLIGHT, "DAYLIGHT"}
209 };
210
211 static vcalendar_field_list_s vcalendar_field_list_version[] = {
212         {-1, VCALENDAR_VERSION}
213 };
214
215 static vcalendar_field_list_s vcalendar_field_list_categories[] = {
216         {VCALENDAR_FIELD_CATEGORIES_APPOINTMENT, "APPOINTMENT"},
217         {VCALENDAR_FIELD_CATEGORIES_HOLIDAY, "HOLIDAY"},
218         {VCALENDAR_FIELD_CATEGORIES_BUSINESS, "BUSINESS"},
219         {VCALENDAR_FIELD_CATEGORIES_SPECIAL_OCCASION, "SPECIAL OCCASION"},
220         {VCALENDAR_FIELD_CATEGORIES_IMPORTANT, "IMPORTANT"},
221         {VCALENDAR_FIELD_CATEGORIES_BIRTHDAY, "BIRTHDAY"},
222         {VCALENDAR_FIELD_CATEGORIES_MISSCELLANEOUS, "MISSCELLANEOUS"}
223 };
224
225 static vcalendar_field_list_s vcalendar_field_list_status[] = {
226         {VCALENDAR_FIELD_STATUS_NEEDS_ACTION, "NEEDS ACTION"},
227         {VCALENDAR_FIELD_STATUS_COMPLETED, "COMPLETED"}
228 };
229
230 #endif                          /* IN_DATASTORE_INFO_VCALENDAR_H_ */