update for beta universally
[framework/messaging/email-service.git] / email-ipc / email-ipc-api / include / email-ipc-api-info.h
1 /*
2 *  email-service
3 *
4 * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
5 *
6 * Contact: Kyuho Jo <kyuho.jo@samsung.com>, Sunghyun Kwon <sh0701.kwon@samsung.com>
7
8 * Licensed under the Apache License, Version 2.0 (the "License");
9 * you may not use this file except in compliance with the License.
10 * You may obtain a copy of the License at
11 *
12 * http://www.apache.org/licenses/LICENSE-2.0
13 *
14 * Unless required by applicable law or agreed to in writing, software
15 * distributed under the License is distributed on an "AS IS" BASIS,
16 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 * See the License for the specific language governing permissions and
18 * limitations under the License.
19 *
20 */
21
22
23 #ifndef _IPC_APIINFO_H_
24 #define _IPC_APIINFO_H_
25
26 #include <stdio.h>
27
28 #include "email-ipc.h"
29 #include "email-ipc-api-info.h"
30 #include "email-ipc-param-list.h"
31
32 typedef struct {
33         long api_id;
34         long response_id;
35         long app_id;
36         emipc_param_list *params[2];
37 } emipc_email_api_info;
38
39 EXPORT_API bool emipc_set_api_id_of_api_info(emipc_email_api_info *api_info, long api_id);
40
41 EXPORT_API long emipc_get_api_id_of_api_info(emipc_email_api_info *api_info);
42
43 EXPORT_API bool emipc_set_app_id_of_api_info(emipc_email_api_info *api_info, long app_id);
44
45 EXPORT_API long emipc_get_app_id_of_api_info(emipc_email_api_info *api_info);
46
47 EXPORT_API bool emipc_set_response_id_of_api_info(emipc_email_api_info *api_info, long response_id);
48
49 EXPORT_API long emipc_get_response_id_of_api_info(emipc_email_api_info *api_info);
50
51 EXPORT_API bool emipc_parse_stream_of_api_info(emipc_email_api_info *api_info, EPARAMETER_DIRECTION direction, void *stream);
52
53 EXPORT_API unsigned char *emipc_get_stream_of_api_info(emipc_email_api_info *api_info, EPARAMETER_DIRECTION direction);
54
55 EXPORT_API int emipc_get_stream_length_of_api_info(emipc_email_api_info *api_info, EPARAMETER_DIRECTION direction);
56
57 EXPORT_API void *emipc_get_parameters_of_api_info(emipc_email_api_info *api_info, EPARAMETER_DIRECTION direction);
58
59
60
61 /* don't insert empty line */
62 #define EM_APIID_TO_STR(nAPIID) \
63         ({\
64                 int id=nAPIID;\
65                 const char* s=NULL;\
66                 switch(id) {\
67                         case _EMAIL_API_ADD_ACCOUNT:\
68                                         s = "_EMAIL_API_ADD_ACCOUNT";\
69                                         break;\
70                         case _EMAIL_API_ADD_MAILBOX:\
71                                         s = "_EMAIL_API_ADD_MAILBOX";\
72                                         break;\
73                         case _EMAIL_API_DELETE_MAILBOX:\
74                                         s = "_EMAIL_API_DELETE_MAILBOX";\
75                                         break;\
76                         case _EMAIL_API_UPDATE_MAILBOX:\
77                                         s = "_EMAIL_API_UPDATE_MAILBOX";\
78                                         break;\
79                         case _EMAIL_API_SET_MAIL_SLOT_SIZE:\
80                                         s = "_EMAIL_API_SET_MAIL_SLOT_SIZE";\
81                                         break;\
82                         case _EMAIL_API_SEND_MAIL:\
83                                         s = "_EMAIL_API_SEND_MAIL";\
84                                         break;\
85                         case _EMAIL_API_GET_MAILBOX_COUNT:\
86                                         s = "_EMAIL_API_GET_MAILBOX_COUNT";\
87                                         break;\
88                         case _EMAIL_API_GET_MAILBOX_LIST:\
89                                         s = "_EMAIL_API_GET_MAILBOX_LIST";\
90                                         break;\
91                         case _EMAIL_API_GET_SUBMAILBOX_LIST:\
92                                         s = "_EMAIL_API_GET_SUBMAILBOX_LIST";\
93                                         break;\
94                         case _EMAIL_API_SYNC_HEADER:\
95                                         s = "_EMAIL_API_SYNC_HEADER";\
96                                         break;\
97                         case _EMAIL_API_DOWNLOAD_BODY:\
98                                         s = "_EMAIL_API_DOWNLOAD_BODY";\
99                                         break;\
100                         case _EMAIL_API_CLEAR_DATA:\
101                                         s = "_EMAIL_API_CLEAR_DATA";\
102                                         break;\
103                         case _EMAIL_API_DELETE_ALL_MAIL:\
104                                         s = "_EMAIL_API_DELETE_ALL_MAIL";\
105                                         break;\
106                         case _EMAIL_API_DELETE_MAIL:\
107                                         s = "_EMAIL_API_DELETE_MAIL";\
108                                         break;\
109                         case _EMAIL_API_MODIFY_MAIL_FLAG:\
110                                         s = "_EMAIL_API_MODIFY_MAIL_FLAG";\
111                                         break;\
112                         case _EMAIL_API_MODIFY_MAIL_EXTRA_FLAG:\
113                                         s = "_EMAIL_API_MODIFY_MAIL_EXTRA_FLAG";\
114                                         break;\
115                         case _EMAIL_API_ADD_RULE:\
116                                         s = "_EMAIL_API_ADD_RULE";\
117                                         break;\
118                         case _EMAIL_API_GET_RULE:\
119                                         s = "_EMAIL_API_GET_RULE";\
120                                         break;\
121                         case _EMAIL_API_GET_RULE_LIST:\
122                                         s = "_EMAIL_API_GET_RULE";\
123                                         break;\
124                         case _EMAIL_API_FIND_RULE:\
125                                         s = "_EMAIL_API_FIND_RULE";\
126                                         break;\
127                         case _EMAIL_API_UPDATE_RULE:\
128                                         s = "_EMAIL_API_UPDATE_RULE";\
129                                         break;\
130                         case _EMAIL_API_DELETE_RULE:\
131                                         s = "_EMAIL_API_DELETE_RULE";\
132                                         break;\
133                         case _EMAIL_API_MOVE_MAIL:\
134                                         s = "_EMAIL_API_MOVE_MAIL";\
135                                         break;\
136                         case _EMAIL_API_MOVE_ALL_MAIL:\
137                                         s = "_EMAIL_API_MOVE_ALL_MAIL";\
138                                         break;\
139                         case _EMAIL_API_SET_FLAGS_FIELD:\
140                                         s = "_EMAIL_API_SET_FLAGS_FIELD";\
141                                         break;\
142                         case _EMAIL_API_ADD_MAIL:\
143                                         s = "_EMAIL_API_ADD_MAIL";\
144                                         break;\
145                         case _EMAIL_API_UPDATE_MAIL:\
146                                         s = "_EMAIL_API_UPDATE_MAIL";\
147                                         break;\
148                         case _EMAIL_API_MOVE_THREAD_TO_MAILBOX:\
149                                         s = "_EMAIL_API_MOVE_THREAD_TO_MAILBOX";\
150                                         break;\
151                         case _EMAIL_API_DELETE_THREAD:\
152                                         s = "_EMAIL_API_DELETE_THREAD";\
153                                         break;\
154                         case _EMAIL_API_MODIFY_SEEN_FLAG_OF_THREAD:\
155                                         s = "_EMAIL_API_MODIFY_SEEN_FLAG_OF_THREAD";\
156                                         break;\
157                         case _EMAIL_API_UPDATE_ACCOUNT:\
158                                         s = "_EMAIL_API_UPDATE_ACCOUNT";\
159                                         break;\
160                         case _EMAIL_API_ADD_ATTACHMENT:\
161                                         s = "_EMAIL_API_ADD_ATTACHMENT";\
162                                         break;\
163                         case _EMAIL_API_GET_IMAP_MAILBOX_LIST:\
164                                         s = "_EMAIL_API_GET_IMAP_MAILBOX_LIST";\
165                                         break;\
166                         case _EMAIL_API_GET_ATTACHMENT:\
167                                         s = "_EMAIL_API_GET_ATTACHMENT";\
168                                         break;\
169                         case _EMAIL_API_DELETE_ATTACHMENT:\
170                                         s = "_EMAIL_API_DELETE_ATTACHMENT";\
171                                         break;\
172                         case _EMAIL_API_DOWNLOAD_ATTACHMENT:\
173                                         s = "_EMAIL_API_DOWNLOAD_ATTACHMENT";\
174                                         break;\
175                         case _EMAIL_API_GET_ACCOUNT_LIST:\
176                                         s = "_EMAIL_API_GET_ACCOUNT_LIST";\
177                                         break;\
178                         case _EMAIL_API_SEND_SAVED:\
179                                         s = "_EMAIL_API_SEND_SAVED";\
180                                         break;\
181                         case _EMAIL_API_CANCEL_JOB:\
182                                         s = "_EMAIL_API_CANCEL_JOB";\
183                                         break;\
184                         case _EMAIL_API_GET_PENDING_JOB:\
185                                         s = "_EMAIL_API_GET_PENDING_JOB";\
186                                         break;\
187                         case _EMAIL_API_NETWORK_GET_STATUS:\
188                                         s = "_EMAIL_API_NETWORK_GET_STATUS";\
189                                         break;\
190                         case _EMAIL_API_SEND_RETRY:\
191                                         s = "_EMAIL_API_SEND_RETRY";\
192                                         break;\
193                         case _EMAIL_API_VALIDATE_ACCOUNT :\
194                                         s = "_EMAIL_API_VALIDATE_ACCOUNT";\
195                                         break;\
196                         case _EMAIL_API_SEND_MAIL_CANCEL_JOB :\
197                                         s = "_EMAIL_API_SEND_MAIL_CANCEL_JOB";\
198                                         break;\
199                         case _EMAIL_API_SEARCH_MAIL_ON_SERVER :\
200                                         s = "_EMAIL_API_SEARCH_MAIL_ON_SERVER";\
201                                         break;\
202                         case _EMAIL_API_ADD_ACCOUNT_WITH_VALIDATION :\
203                                         s = "_EMAIL_API_ADD_ACCOUNT_WITH_VALIDATION";\
204                                         break;\
205                         case _EMAIL_API_BACKUP_ACCOUNTS :\
206                                         s = "_EMAIL_API_BACKUP_ACCOUNTS";\
207                                         break;\
208                         case _EMAIL_API_RESTORE_ACCOUNTS :\
209                                         s = "_EMAIL_API_RESTORE_ACCOUNTS";\
210                                         break;\
211                         case _EMAIL_API_PRINT_RECEIVING_EVENT_QUEUE :\
212                                         s = "_EMAIL_API_PRINT_RECEIVING_EVENT_QUEUE";\
213                                         break;\
214                         case _EMAIL_API_PING_SERVICE :\
215                                         s = "_EMAIL_API_PING_SERVICE";\
216                                         break;\
217                         case _EMAIL_API_UPDATE_NOTIFICATION_BAR_FOR_UNREAD_MAIL :\
218                                         s = "_EMAIL_API_UPDATE_NOTIFICATION_BAR_FOR_UNREAD_MAIL";\
219                                         break;\
220                         case _EMAIL_API_GET_PASSWORD_LENGTH_OF_ACCOUNT:\
221                                         s = "_EMAIL_API_GET_PASSWORD_LENGTH_OF_ACCOUNT";\
222                                         break;\
223                         default : \
224                                         s = "UNKNOWN_APIID";\
225                 }\
226                 s;\
227         })
228
229
230 #endif  /* _IPC_APIINFO_H_ */
231
232