4 * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
6 * Contact: JuHak Park <juhaki.park@samsung.com>,
7 * JuneHyuk Lee <junhyuk7.lee@samsung.com>,
8 * SunBong Ha <sunbong.ha@samsung.com>
10 * Licensed under the Apache License, Version 2.0 (the "License");
11 * you may not use this file except in compliance with the License.
12 * You may obtain a copy of the License at
14 * http://www.apache.org/licenses/LICENSE-2.0
16 * Unless required by applicable law or agreed to in writing, software
17 * distributed under the License is distributed on an "AS IS" BASIS,
18 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19 * See the License for the specific language governing permissions and
20 * limitations under the License.
29 * For any sort of issue you concern as to this software,
30 * you may use following point of contact.
31 * All resources contributed on this software
32 * are orinigally written by S-Core Inc., a member of Samsung Group.
34 * SeongWon Shim <seongwon.shim@samsung.com>
40 * @brief This file is the header file of interface of account
48 #include "Common/Common_Define.h"
51 * @par Description: API to add or edit profile
52 * This API can be used to add or edit profile from vconf
55 * @par Typical use case:
56 * @par Method of function operation:
57 * @par Important notes:
58 * @param[in] string type, profileDirName(identify profile in UI)
59 * @param[in] int type, whether add or edit
61 * @return 1 on success
75 /*TODO have to be removed after removing vconf*/
76 int update_all_config(char *profile, bool isAdd, int *accountId);
79 * @par Description: API to add profile from csc
80 * This API can be used to add profile from csc(vconf)
83 * @par Typical use case:
84 * @par Method of function operation:
85 * @par Important notes:
86 * @param[in] int type, index of profile
88 * @return 1 on success
102 int add_profile_csc(int index);
105 * @par Description: API to add profile API
106 * This API can be used to add profile
107 * This API is part of API for UI
110 * @par Typical use case:
111 * @par Method of function operation:
112 * @par Important notes:
113 * @param[in] string type, profile name
114 * @param[in] string type, server ip
115 * @param[in] string type, id
116 * @param[in] string type, password
117 * @param[in] GList type, list of resource_cp structure
118 * @param[out] int type, account id
120 * @return true on success
134 bool add_profile_cp(char *profileName, char *addr, char *id, char *password, GList *categories, int *accountId);
138 * @par Description: API to add profile API
139 * This API can be used to add profile
140 * This API is part of API for UI
143 * @par Typical use case:
144 * @par Method of function operation:
145 * @par Important notes:
146 * @param[in] string type, profileDirName(identify profile in UI)
147 * @param[in] string type, profile name
148 * @param[in] string type, server ip
149 * @param[in] string type, id
150 * @param[in] string type, password
151 * @param[in] string type, sync mode
152 * @param[in] string type, sync type
153 * @param[in] string type, interval(for periodic)
154 * @param[in] GList type, list of sync_category structure
155 * @param[out] int type, account id
157 * @return true on success
171 bool add_profile(char *profileDirName, char *profileName, char *addr, char *id,
172 char *password, char *syncMode, char *syncType,
173 char *interval, GList *categories, int *accountId);
176 * @par Description: API to edit profile API
177 * This API can be used to edit profile
178 * This API is part of API for UI
181 * @par Typical use case:
182 * @par Method of function operation:
183 * @par Important notes:
184 * @param[in] int type, account id
185 * @param[in] string type, profile name
186 * @param[in] string type, server ip
187 * @param[in] string type, id
188 * @param[in] string type, password
189 * @param[in] string type, sync mode
190 * @param[in] string type, sync type
191 * @param[in] string type, interval(for periodic)
192 * @param[in] GList type, list of sync_category structure
194 * @return true on success
208 bool edit_profile(int accountId, char *profileName, char *addr, char *id,
209 char *password, char *syncMode, char *syncType, char *interval, GList *categories);
213 * @par Description: API to delete profile API
214 * This API can be used to delete profile
215 * This API is part of API for UI
218 * @par Typical use case:
219 * @par Method of function operation:
220 * @par Important notes:
221 * @param[in] GList type, list of account id
223 * @return true on success
237 bool delete_profiles(GList *profiles);
240 * @par Description: API to get profile directory name of synchronizing account
241 * This API can be used to get profile directory name
244 * @par Typical use case:
245 * @par Method of function operation:
246 * @par Important notes:
247 * @param[out] string type, profileDirName(identify profile in UI)
249 * @return true on success
263 bool get_synchronising_profile(char **profile);
267 * @par Description: API to add profile for call log sync
268 * This API can be used to add profile
269 * This API is part of API for call log sync
272 * @par Typical use case:
273 * @par Method of function operation:
274 * @par Important notes:
275 * @param[out] int type, accountId
277 * @return true on success
291 bool add_profile_calllog(int *accountId);
295 * @par Description: API to delete profile for call log sync
296 * This API can be used to delete profile
297 * This API is part of API for call log sync
300 * @par Typical use case:
301 * @par Method of function operation:
302 * @par Important notes:
304 * @return true on success
318 bool delete_profile_calllog();
322 * @par Description: API to delete profile
323 * This API can be used to delete profile
326 * @par Typical use case:
327 * @par Method of function operation:
328 * @par Important notes:
330 * @return true on success
344 bool delete_profile(char *access_name);
346 #endif /* SE_ACCOUNT_H_ */