4 * Copyright (c) 2010 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
6 * Contact: Wonyoung Lee <wy1115.lee@samsung.com>, Tarun Kumar <tarun.kr@samsung.com>
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
12 * http://www.apache.org/licenses/LICENSE-2.0
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.
25 * @defgroup Account_PG Account
28 <h1 class="pg">Introduction</h1>
29 <h2 class="pg">Purpose of this document</h2>
31 The purpose of this document is to describe how applications can use account APIs for handling Account's information. This document gives programming guidelines to application engineers and examples of using Account data.
33 <h2 class="pg">Scope</h2>
35 The scope of this document is limited to Account API usage.
38 <h1 class="pg">Account Architecture</h1>
39 <h2 class="pg"> Overview</h2>
41 Account is responsible for inserting, deleting, and updating Account data in order to accommodate the needs for application's Account data.
42 Users can access Account data without knowing DB schema, SQLite, relations of data
44 <h1 class="pg">Account Features</h1>
46 - Handle information of Account
48 <h2 class="pg">Similar to Sqlite3</h2>
49 Account API is similar to Sqlite3.
51 <h2 class="pg">Handle information of Account</h2>
52 Account supports to insert/update/delete/get/set/query information of Account.
53 The Information of Account includes user name, package name, email, access token, icon path, source, display name, capability informatio etc.
55 <h1 class="pg">Account API Description</h1>
57 you can refer @ref ACCOUNT_SVC
59 <h1 class="pg">Sample Code</h1>
61 <h2 class="pg">Connect to Account Database</h2>
63 Before using Account information from Account API, caller module should connect to the Account database, and after finishing with the account information, should disconnect from the Account database
66 int account_connect(void);
68 int account_disconnect(void);
71 <h2 class="pg">Insert information of account</h2>
74 void insert_test(void)
79 ret = account_connect();
80 if(ret != ACCOUNT_ERROR_NONE)
82 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
85 ret = account_create(&account);
86 if(ret != ACCOUNT_ERROR_NONE)
88 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
91 ret = account_set_user_name(account, "tarun.kr");
93 if(ret != ACCOUNT_ERROR_NONE)
95 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
98 ret = account_set_display_name(account, "Tarun Kumar");
100 if(ret != ACCOUNT_ERROR_NONE)
102 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
105 ret = account_set_domain_name(account, "Samsung electronics");
106 if(ret != ACCOUNT_ERROR_NONE)
108 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
111 ret = account_set_email_address(account, "tarun@gmail.com");
112 if(ret != ACCOUNT_ERROR_NONE)
114 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
117 ret = account_set_package_name(account, "com.samsung.twiter");
118 if(ret != ACCOUNT_ERROR_NONE)
120 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
123 ret = account_set_icon_path(account, "icon-path");
124 if(ret != ACCOUNT_ERROR_NONE)
126 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
129 ret = account_set_access_token(account, "ACCESSTOKEN");
130 if(ret != ACCOUNT_ERROR_NONE)
132 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
135 ret = account_set_auth_type( account, ACCOUNT_AUTH_TYPE_OAUTH );
136 if(ret != ACCOUNT_ERROR_NONE)
138 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
141 ret = account_set_secret( account, ACCOUNT_SECRECY_INVISIBLE );
142 if(ret != ACCOUNT_ERROR_NONE)
144 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
146 ret = account_set_source(account, "URUSA inc.");
150 for(i=0;i<USER_TXT_CNT;i++)
152 ret = account_set_user_text(account, i, "user txt");
153 if(ret != ACCOUNT_ERROR_NONE)
155 printf("(%d)-[Account] ret = %d, account=%p, i=%d\n", __LINE__, ret, account, i);
160 for(i=0;i<USER_INT_CNT;i++)
162 ret = account_set_user_int(account, i, 888);
163 if(ret != ACCOUNT_ERROR_NONE)
165 printf("(%d)-[Account] ret = %d, account=%p, i=%d\n", __LINE__, ret, account, i);
169 ret = account_set_capability(account, ACCOUNT_CAPABILITY_CONTACT, ACCOUNT_CAPABILITY_ENABLED);
170 ret = account_set_capability(account, ACCOUNT_CAPABILITY_CALENDAR, ACCOUNT_CAPABILITY_ENABLED);
171 ret = account_set_capability(account, ACCOUNT_CAPABILITY_PHOTO, ACCOUNT_CAPABILITY_ENABLED);
172 ret = account_set_capability(account, ACCOUNT_CAPABILITY_VIDEO, ACCOUNT_CAPABILITY_ENABLED);
173 ret = account_set_capability(account, ACCOUNT_CAPABILITY_EMAIL, ACCOUNT_CAPABILITY_ENABLED);
174 ret = account_set_capability(account, ACCOUNT_CAPABILITY_STATUS_POST, ACCOUNT_CAPABILITY_ENABLED);
175 ret = account_set_capability(account, ACCOUNT_CAPABILITY_VOIP, ACCOUNT_CAPABILITY_ENABLED);
176 ret = account_set_capability(account, ACCOUNT_CAPABILITY_SAMSUNG_APPS, ACCOUNT_CAPABILITY_ENABLED);
177 ret = account_set_capability(account, ACCOUNT_CAPABILITY_MOBILE_TRACKER, ACCOUNT_CAPABILITY_ENABLED);
180 ret = account_insert_to_db(account, &account_id);
181 if(ret != ACCOUNT_ERROR_NONE)
183 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
187 ret = account_destroy(account);
188 if(ret != ACCOUNT_ERROR_NONE)
190 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
193 ret = account_disconnect();
194 if(ret != ACCOUNT_ERROR_NONE)
196 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
203 <h2 class="pg">Get account by id</h2>
206 bool _capability_get_callback(account_capability_type_e capability_type, account_capability_state_e capability_value, void* user_data)
208 int test_type = capability_type;
209 int test_value = capability_value;
211 printf("_capability_get_callback test_type = : %d\n", test_type);
212 printf("_capability_get_callback test_value = : %d\n", test_value);
216 static void _account_free_text(char *text)
224 void get_account_by_id(int account_id)
229 ret = account_connect();
230 if(ret != ACCOUNT_ERROR_NONE)
232 printf("(%d)-[Account] ret = %d, \n", __LINE__, ret);
235 ret = account_create(&account);
236 if(ret != ACCOUNT_ERROR_NONE)
238 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
241 ret = account_query_account_by_account_id(account_id, &account);
242 if(ret != ACCOUNT_ERROR_NONE)
244 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
247 char *test_text = NULL;
249 account_get_user_name(handle, &test_text);
250 printf("_account_get_callback : %s\n", test_text);
252 _account_free_text(test_text);
254 account_get_display_name(handle, &test_text);
255 printf("_account_get_callback : %s\n", test_text);
257 _account_free_text(test_text);
259 account_get_email_address(handle, &test_text);
260 printf("_account_get_callback : %s\n", test_text);
262 _account_free_text(test_text);
264 account_get_icon_path(handle, &test_text);
265 printf("_account_get_callback : %s\n", test_text);
267 _account_free_text(test_text);
269 account_get_source(handle, &test_text);
270 printf("_account_get_callback : %s\n", test_text);
272 _account_free_text(test_text);
274 account_get_package_name(handle, &test_text);
275 printf("_account_get_callback : %s\n", test_text);
277 _account_free_text(test_text);
279 account_get_domain_name(handle, &test_text);
280 printf("_account_get_callback : %s\n", test_text);
282 _account_free_text(test_text);
284 account_get_access_token(handle, &test_text);
285 printf("_account_get_callback : %s\n", test_text);
289 for(i=0;i<USER_TXT_CNT;i++)
291 _account_free_text(test_text);
293 account_get_user_text(handle, i, &test_text);
294 printf("_account_get_callback : %s\n", test_text);
299 account_auth_type_e auth_type;
300 account_get_auth_type(handle, &auth_type);
301 printf("account_get_auth_type : %d\n", auth_type);
303 account_secrecy_state_e secret;
304 account_get_secret(handle, &secret);
305 printf("account_get_secret : %d\n", secret);
307 account_sync_state_e sync_support;
308 account_get_sync_support(handle, &sync_support);
309 printf("account_get_sync_support : %d\n", sync_support);
311 for(i=0;i<USER_INT_CNT;i++)
314 account_get_user_int(handle, i, &test_int);
315 printf("_account_get_callback : %d\n", test_int);
318 account_get_capability(handle, _capability_get_callback, NULL);
320 ret = account_destroy(account);
321 if(ret != ACCOUNT_ERROR_NONE)
323 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
326 ret = account_disconnect();
327 if(ret != ACCOUNT_ERROR_NONE)
329 printf("(%d)-[Account] ret = %d, \n", __LINE__, ret);
335 <h2 class="pg">Get account list by user name</h2>
338 static void _account_free_text(char *text)
346 bool _account_get_callback(account_h handle, void* user_data)
348 printf("_account_get_callback\n");
350 char *test_text = NULL;
352 account_get_user_name(handle, &test_text);
353 printf("_account_get_callback : %s\n", test_text);
355 _account_free_text(test_text);
357 account_get_display_name(handle, &test_text);
358 printf("_account_get_callback : %s\n", test_text);
360 _account_free_text(test_text);
362 account_get_email_address(handle, &test_text);
363 printf("_account_get_callback : %s\n", test_text);
365 _account_free_text(test_text);
367 account_get_icon_path(handle, &test_text);
368 printf("_account_get_callback : %s\n", test_text);
370 _account_free_text(test_text);
372 account_get_source(handle, &test_text);
373 printf("_account_get_callback : %s\n", test_text);
375 _account_free_text(test_text);
377 account_get_package_name(handle, &test_text);
378 printf("_account_get_callback : %s\n", test_text);
380 _account_free_text(test_text);
382 account_get_domain_name(handle, &test_text);
383 printf("_account_get_callback : %s\n", test_text);
385 _account_free_text(test_text);
387 account_get_access_token(handle, &test_text);
388 printf("_account_get_callback : %s\n", test_text);
392 for(i=0;i<USER_TXT_CNT;i++)
394 _account_free_text(test_text);
396 account_get_user_text(handle, i, &test_text);
397 printf("_account_get_callback : %s\n", test_text);
402 account_auth_type_e auth_type;
403 account_get_auth_type(handle, &auth_type);
404 printf("account_get_auth_type : %d\n", auth_type);
406 account_secrecy_state_e secret;
407 account_get_secret(handle, &secret);
408 printf("account_get_secret : %d\n", secret);
410 account_sync_state_e sync_support;
411 account_get_sync_support(handle, &sync_support);
412 printf("account_get_sync_support : %d\n", sync_support);
414 for(i=0;i<USER_INT_CNT;i++)
417 account_get_user_int(handle, i, &test_int);
418 printf("_account_get_callback : %d\n", test_int);
421 account_get_capability(handle, _capability_get_callback, NULL);
427 void get_account_list_by_user_name(char * user_name)
432 ret = account_connect();
433 if(ret != ACCOUNT_ERROR_NONE)
435 printf("(%d)-[Account] ret = %d, \n", __LINE__, ret);
438 ret = account_query_account_by_user_name(_account_get_callback, user_name, NULL);
439 if(ret != ACCOUNT_ERROR_NONE)
441 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
444 ret = account_disconnect();
445 if(ret != ACCOUNT_ERROR_NONE)
447 printf("(%d)-[Account] ret = %d, \n", __LINE__, ret);
452 <h2 class="pg">Get account list by package name</h2>
455 static void _account_free_text(char *text)
463 bool _account_get_callback(account_h handle, void* user_data)
465 printf("_account_get_callback\n");
467 char *test_text = NULL;
469 account_get_user_name(handle, &test_text);
470 printf("_account_get_callback : %s\n", test_text);
472 _account_free_text(test_text);
474 account_get_display_name(handle, &test_text);
475 printf("_account_get_callback : %s\n", test_text);
477 _account_free_text(test_text);
479 account_get_email_address(handle, &test_text);
480 printf("_account_get_callback : %s\n", test_text);
482 _account_free_text(test_text);
484 account_get_icon_path(handle, &test_text);
485 printf("_account_get_callback : %s\n", test_text);
487 _account_free_text(test_text);
489 account_get_source(handle, &test_text);
490 printf("_account_get_callback : %s\n", test_text);
492 _account_free_text(test_text);
494 account_get_package_name(handle, &test_text);
495 printf("_account_get_callback : %s\n", test_text);
497 _account_free_text(test_text);
499 account_get_domain_name(handle, &test_text);
500 printf("_account_get_callback : %s\n", test_text);
502 _account_free_text(test_text);
504 account_get_access_token(handle, &test_text);
505 printf("_account_get_callback : %s\n", test_text);
509 for(i=0;i<USER_TXT_CNT;i++)
511 _account_free_text(test_text);
513 account_get_user_text(handle, i, &test_text);
514 printf("_account_get_callback : %s\n", test_text);
519 account_auth_type_e auth_type;
520 account_get_auth_type(handle, &auth_type);
521 printf("account_get_auth_type : %d\n", auth_type);
523 account_secrecy_state_e secret;
524 account_get_secret(handle, &secret);
525 printf("account_get_secret : %d\n", secret);
527 account_sync_state_e sync_support;
528 account_get_sync_support(handle, &sync_support);
529 printf("account_get_sync_support : %d\n", sync_support);
531 for(i=0;i<USER_INT_CNT;i++)
534 account_get_user_int(handle, i, &test_int);
535 printf("_account_get_callback : %d\n", test_int);
538 account_get_capability(handle, _capability_get_callback, NULL);
543 void get_account_list_by_package_name(char * package_name)
548 ret = account_connect();
549 if(ret != ACCOUNT_ERROR_NONE)
551 printf("(%d)-[Account] ret = %d, \n", __LINE__, ret);
554 ret = account_query_account_by_package_name(_account_get_callback, package_name, NULL);
555 if(ret != ACCOUNT_ERROR_NONE)
557 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
560 ret = account_disconnect();
561 if(ret != ACCOUNT_ERROR_NONE)
563 printf("(%d)-[Account] ret = %d, \n", __LINE__, ret);
568 <h2 class="pg">Get all account list</h2>
571 static void _account_free_text(char *text)
579 bool _account_get_callback(account_h handle, void* user_data)
581 printf("_account_get_callback\n");
583 char *test_text = NULL;
585 account_get_user_name(handle, &test_text);
586 printf("_account_get_callback : %s\n", test_text);
588 _account_free_text(test_text);
590 account_get_display_name(handle, &test_text);
591 printf("_account_get_callback : %s\n", test_text);
593 _account_free_text(test_text);
595 account_get_email_address(handle, &test_text);
596 printf("_account_get_callback : %s\n", test_text);
598 _account_free_text(test_text);
600 account_get_icon_path(handle, &test_text);
601 printf("_account_get_callback : %s\n", test_text);
603 _account_free_text(test_text);
605 account_get_source(handle, &test_text);
606 printf("_account_get_callback : %s\n", test_text);
608 _account_free_text(test_text);
610 account_get_package_name(handle, &test_text);
611 printf("_account_get_callback : %s\n", test_text);
613 _account_free_text(test_text);
615 account_get_domain_name(handle, &test_text);
616 printf("_account_get_callback : %s\n", test_text);
618 _account_free_text(test_text);
620 account_get_access_token(handle, &test_text);
621 printf("_account_get_callback : %s\n", test_text);
625 for(i=0;i<USER_TXT_CNT;i++)
627 _account_free_text(test_text);
629 account_get_user_text(handle, i, &test_text);
630 printf("_account_get_callback : %s\n", test_text);
635 account_auth_type_e auth_type;
636 account_get_auth_type(handle, &auth_type);
637 printf("account_get_auth_type : %d\n", auth_type);
639 account_secrecy_state_e secret;
640 account_get_secret(handle, &secret);
641 printf("account_get_secret : %d\n", secret);
643 account_sync_state_e sync_support;
644 account_get_sync_support(handle, &sync_support);
645 printf("account_get_sync_support : %d\n", sync_support);
647 for(i=0;i<USER_INT_CNT;i++)
650 account_get_user_int(handle, i, &test_int);
651 printf("_account_get_callback : %d\n", test_int);
654 account_get_capability(handle, _capability_get_callback, NULL);
659 void get_all_account()
664 ret = account_connect();
665 if(ret != ACCOUNT_ERROR_NONE)
667 printf("(%d)-[Account] ret = %d, \n", __LINE__, ret);
670 ret = account_foreach_account_from_db(_account_get_callback, NULL);
671 if(ret != ACCOUNT_ERROR_NONE)
673 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
676 ret = account_disconnect();
677 if(ret != ACCOUNT_ERROR_NONE)
679 printf("(%d)-[Account] ret = %d, \n", __LINE__, ret);
684 <h2 class="pg">Update information of account by account id</h2>
687 void update_accont_by_id(int account_id)
692 ret = account_connect();
693 if(ret != ACCOUNT_ERROR_NONE)
695 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
698 ret = account_create(&account);
699 if(ret != ACCOUNT_ERROR_NONE)
701 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
704 ret = account_set_user_name(account, "update-tarun.kr");
706 if(ret != ACCOUNT_ERROR_NONE)
708 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
711 ret = account_set_display_name(account, "update-Tarun Kumar");
712 if(ret != ACCOUNT_ERROR_NONE)
714 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
717 ret = account_set_domain_name(account, "update-Samsung electronics");
718 if(ret != ACCOUNT_ERROR_NONE)
720 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
723 ret = account_set_email_address(account, "update-tarun@gmail.com");
724 if(ret != ACCOUNT_ERROR_NONE)
726 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
729 ret = account_set_package_name(account, "update-com.samsung.twiter");
730 if(ret != ACCOUNT_ERROR_NONE)
732 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
735 ret = account_set_icon_path(account, "update-icon-path");
736 if(ret != ACCOUNT_ERROR_NONE)
738 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
741 ret = account_set_access_token(account, "update-ACCESSTOKEN");
742 if(ret != ACCOUNT_ERROR_NONE)
744 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
747 ret = account_set_auth_type( account, ACCOUNT_AUTH_TYPE_OAUTH );
748 if(ret != ACCOUNT_ERROR_NONE)
750 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
752 ret = account_set_secret( account, ACCOUNT_SECRECY_INVISIBLE );
753 if(ret != ACCOUNT_ERROR_NONE)
755 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
757 ret = account_set_source(account, "update-URUSA inc.");
761 for(i=0;i<USER_TXT_CNT;i++)
763 ret = account_set_user_text(account, i, "update-user txt");
764 if(ret != ACCOUNT_ERROR_NONE)
766 printf("(%d)-[Account] ret = %d, account=%p, i=%d\n", __LINE__, ret, account, i);
771 for(i=0;i<USER_INT_CNT;i++)
773 ret = account_set_user_int(account, i, 999);
774 if(ret != ACCOUNT_ERROR_NONE)
776 printf("(%d)-[Account] ret = %d, account=%p, i=%d\n", __LINE__, ret, account, i);
780 ret = account_set_capability(account, ACCOUNT_CAPABILITY_CONTACT, ACCOUNT_CAPABILITY_DISABLED);
781 ret = account_set_capability(account, ACCOUNT_CAPABILITY_CALENDAR, ACCOUNT_CAPABILITY_DISABLED);
782 ret = account_set_capability(account, ACCOUNT_CAPABILITY_PHOTO, ACCOUNT_CAPABILITY_DISABLED);
783 ret = account_set_capability(account, ACCOUNT_CAPABILITY_VIDEO, ACCOUNT_CAPABILITY_DISABLED);
784 ret = account_set_capability(account, ACCOUNT_CAPABILITY_EMAIL, ACCOUNT_CAPABILITY_DISABLED);
785 ret = account_set_capability(account, ACCOUNT_CAPABILITY_STATUS_POST, ACCOUNT_CAPABILITY_DISABLED);
786 ret = account_set_capability(account, ACCOUNT_CAPABILITY_VOIP, ACCOUNT_CAPABILITY_DISABLED);
787 ret = account_set_capability(account, ACCOUNT_CAPABILITY_SAMSUNG_APPS, ACCOUNT_CAPABILITY_DISABLED);
788 ret = account_set_capability(account, ACCOUNT_CAPABILITY_MOBILE_TRACKER, ACCOUNT_CAPABILITY_DISABLED);
790 ret = account_update_to_db_by_id(account, account_id);
791 if(ret != ACCOUNT_ERROR_NONE)
793 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
797 ret = account_destroy(account);
798 if(ret != ACCOUNT_ERROR_NONE)
800 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
803 ret = account_disconnect();
804 if(ret != ACCOUNT_ERROR_NONE)
806 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
811 <h2 class="pg">Update information of account by user name</h2>
814 void update_accont_by_user_name(char *user_name, char *package_name)
819 ret = account_connect();
820 if(ret != ACCOUNT_ERROR_NONE)
822 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
825 ret = account_create(&account);
826 if(ret != ACCOUNT_ERROR_NONE)
828 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
831 ret = account_set_user_name(account, "update-tarun.kr");
832 if(ret != ACCOUNT_ERROR_NONE)
834 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
837 ret = account_set_display_name(account, "update-Tarun Kumar");
838 if(ret != ACCOUNT_ERROR_NONE)
840 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
843 ret = account_set_domain_name(account, "update-Samsung electronics");
844 if(ret != ACCOUNT_ERROR_NONE)
846 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
849 ret = account_set_email_address(account, "update-tarun@gmail.com");
850 if(ret != ACCOUNT_ERROR_NONE)
852 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
855 ret = account_set_package_name(account, "update-com.samsung.twiter");
856 if(ret != ACCOUNT_ERROR_NONE)
858 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
861 ret = account_set_icon_path(account, "update-icon-path");
862 if(ret != ACCOUNT_ERROR_NONE)
864 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
867 ret = account_set_access_token(account, "update-ACCESSTOKEN");
868 if(ret != ACCOUNT_ERROR_NONE)
870 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
873 ret = account_set_auth_type( account, ACCOUNT_AUTH_TYPE_OAUTH );
874 if(ret != ACCOUNT_ERROR_NONE)
876 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
878 ret = account_set_secret( account, ACCOUNT_SECRECY_INVISIBLE );
879 if(ret != ACCOUNT_ERROR_NONE)
881 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
884 ret = account_set_source(account, "update-URUSA inc.");
885 if(ret != ACCOUNT_ERROR_NONE)
887 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
892 for(i=0;i<USER_TXT_CNT;i++)
894 ret = account_set_user_text(account, i, "update-user txt");
895 if(ret != ACCOUNT_ERROR_NONE)
897 printf("(%d)-[Account] ret = %d, account=%p, i=%d\n", __LINE__, ret, account, i);
902 for(i=0;i<USER_INT_CNT;i++)
904 ret = account_set_user_int(account, i, 999);
905 if(ret != ACCOUNT_ERROR_NONE)
907 printf("(%d)-[Account] ret = %d, account=%p, i=%d\n", __LINE__, ret, account, i);
911 ret = account_set_capability(account, ACCOUNT_CAPABILITY_CONTACT, ACCOUNT_CAPABILITY_DISABLED);
912 ret = account_set_capability(account, ACCOUNT_CAPABILITY_CALENDAR, ACCOUNT_CAPABILITY_DISABLED);
913 ret = account_set_capability(account, ACCOUNT_CAPABILITY_PHOTO, ACCOUNT_CAPABILITY_DISABLED);
914 ret = account_set_capability(account, ACCOUNT_CAPABILITY_VIDEO, ACCOUNT_CAPABILITY_DISABLED);
915 ret = account_set_capability(account, ACCOUNT_CAPABILITY_EMAIL, ACCOUNT_CAPABILITY_DISABLED);
916 ret = account_set_capability(account, ACCOUNT_CAPABILITY_STATUS_POST, ACCOUNT_CAPABILITY_DISABLED);
917 ret = account_set_capability(account, ACCOUNT_CAPABILITY_VOIP, ACCOUNT_CAPABILITY_DISABLED);
918 ret = account_set_capability(account, ACCOUNT_CAPABILITY_SAMSUNG_APPS, ACCOUNT_CAPABILITY_DISABLED);
919 ret = account_set_capability(account, ACCOUNT_CAPABILITY_MOBILE_TRACKER, ACCOUNT_CAPABILITY_DISABLED);
921 ret = account_update_to_db_by_user_name(account, user_name, package_name);
922 if(ret != ACCOUNT_ERROR_NONE)
924 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
928 ret = account_destroy(account);
929 if(ret != ACCOUNT_ERROR_NONE)
931 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
934 ret = account_disconnect();
935 if(ret != ACCOUNT_ERROR_NONE)
937 printf("(%d)-[Account] ret = %d, account=%p\n", __LINE__, ret, account);
942 <h2 class="pg">Delete account by id </h2>
945 void delete_account_by_id(int account_id)
949 ret = account_connect();
950 if(ret != ACCOUNT_ERROR_NONE)
952 printf("(%d)-[Account] ret = %d, \n", __LINE__, ret);
955 ret = account_delete(account_id);
956 if(ret != ACCOUNT_ERROR_NONE)
958 printf("(%d)-[Account] ret = %d, \n", __LINE__, ret);
961 ret = account_disconnect();
962 if(ret != ACCOUNT_ERROR_NONE)
964 printf("(%d)-[Account] ret = %d, \n", __LINE__, ret);
970 <h2 class="pg">Delete account by user name </h2>
973 void delete_account_by_user_name(char *user_name, char *package_name)
976 ret = account_connect();
977 if(ret != ACCOUNT_ERROR_NONE)
979 printf("(%d)-[Account] ret = %d, \n", __LINE__, ret);
982 ret = account_delete_from_db_by_user_name(user_name, package_name);
983 if(ret != ACCOUNT_ERROR_NONE)
985 printf("(%d)-[Account] ret = %d \n", __LINE__, ret);
988 ret = account_disconnect();
989 if(ret != ACCOUNT_ERROR_NONE)
991 printf("(%d)-[Account] ret = %d, \n", __LINE__, ret);
997 <h2 class="pg">Delete account by package name </h2>
1000 void delete_account_by_package_name(char *package_name)
1003 ret = account_connect();
1004 if(ret != ACCOUNT_ERROR_NONE)
1006 printf("(%d)-[Account] ret = %d, \n", __LINE__, ret);
1009 ret = account_delete_from_db_by_package_name(package_name);
1010 if(ret != ACCOUNT_ERROR_NONE)
1012 printf("(%d)-[Account] ret = %d \n", __LINE__, ret);
1015 ret = account_disconnect();
1016 if(ret != ACCOUNT_ERROR_NONE)
1018 printf("(%d)-[Account] ret = %d, \n", __LINE__, ret);
1024 <h2 class="pg">Get account insert dbus notification </h2>
1027 void notify_account_insert()
1030 DBusConnection* conn;
1033 printf("Listening for signals\n");
1035 dbus_error_init(&err);
1037 conn = dbus_bus_get(DBUS_BUS_SYSTEM, &err);
1038 if (dbus_error_is_set(&err)) {
1039 fprintf(stderr, "Connection Error (%s)\n", err.message);
1040 dbus_error_free(&err);
1046 dbus_bus_add_match(conn, "type='signal',interface='account.signal.Type'", &err);
1047 dbus_connection_flush(conn);
1048 if (dbus_error_is_set(&err)) {
1049 fprintf(stderr, "Match Error (%s)\n", err.message);
1052 printf("Match rule sent\n");
1056 dbus_connection_read_write(conn, 0);
1057 msg = dbus_connection_pop_message(conn);
1064 if (dbus_message_is_signal(msg, ACCOUNT_DBUS_SIGNAL_INTERFACE, ACCOUNT_DBUS_NOTI_NAME_INSERT)) {
1065 printf("Got Signal with name insert\n");
1068 dbus_message_unref(msg);
1070 dbus_connection_close(conn);
1074 <h2 class="pg">Get account update dbus notification </h2>
1077 void notify_account_update()
1080 DBusConnection* conn;
1083 printf("Listening for signals\n");
1086 dbus_error_init(&err);
1088 conn = dbus_bus_get(DBUS_BUS_SYSTEM, &err);
1089 if (dbus_error_is_set(&err)) {
1090 fprintf(stderr, "Connection Error (%s)\n", err.message);
1091 dbus_error_free(&err);
1097 dbus_bus_add_match(conn, "type='signal',interface='account.signal.Type'", &err);
1098 dbus_connection_flush(conn);
1099 if (dbus_error_is_set(&err)) {
1100 fprintf(stderr, "Match Error (%s)\n", err.message);
1103 printf("Match rule sent\n");
1107 dbus_connection_read_write(conn, 0);
1108 msg = dbus_connection_pop_message(conn);
1115 if (dbus_message_is_signal(msg, ACCOUNT_DBUS_SIGNAL_INTERFACE, ACCOUNT_DBUS_NOTI_NAME_UPDATE)) {
1116 printf("Got Signal with name update\n");
1119 dbus_message_unref(msg);
1121 dbus_connection_close(conn);
1125 <h2 class="pg">Get account delete dbus notification </h2>
1128 void notify_account_delete()
1131 DBusConnection* conn;
1134 printf("Listening for signals\n");
1137 dbus_error_init(&err);
1139 conn = dbus_bus_get(DBUS_BUS_SYSTEM, &err);
1140 if (dbus_error_is_set(&err)) {
1141 fprintf(stderr, "Connection Error (%s)\n", err.message);
1142 dbus_error_free(&err);
1148 dbus_bus_add_match(conn, "type='signal',interface='account.signal.Type'", &err);
1149 dbus_connection_flush(conn);
1150 if (dbus_error_is_set(&err)) {
1151 fprintf(stderr, "Match Error (%s)\n", err.message);
1154 printf("Match rule sent\n");
1158 dbus_connection_read_write(conn, 0);
1159 msg = dbus_connection_pop_message(conn);
1166 if (dbus_message_is_signal(msg, ACCOUNT_DBUS_SIGNAL_INTERFACE, ACCOUNT_DBUS_NOTI_NAME_DELETE)) {
1167 printf("Got Signal with name delete\n");
1170 dbus_message_unref(msg);
1172 dbus_connection_close(conn);
1176 <h2 class="pg">Get capability by acccount id</h2>
1179 bool _capability_get_callback(account_capability_type_e capability_type, account_capability_state_e capability_value, void* user_data)
1181 int test_type = capability_type;
1182 int test_value = capability_value;
1184 printf("_capability_get_callback test_type = : %d\n", test_type);
1185 printf("_capability_get_callback test_value = : %d\n", test_value);
1189 void capability_by_account_id(int account_id)
1192 ret = account_connect();
1193 if(ret != ACCOUNT_ERROR_NONE)
1195 printf("(%d)-[Account] ret = %d, \n", __LINE__, ret);
1198 ret = account_query_capability_by_account_id(_capability_get_callback, account_id, NULL);
1199 if(ret != ACCOUNT_ERROR_NONE)
1201 printf("(%d)-[Account] ret = %d \n", __LINE__, ret);
1204 ret = account_disconnect();
1205 if(ret != ACCOUNT_ERROR_NONE)
1207 printf("(%d)-[Account] ret = %d, \n", __LINE__, ret);