#include "plugin/data_connector_interface.h"
-#define BACKUP_PATH "/opt/media/Downloads/Kies/.BnR/CallLog.bk"
+#include <tzplatform_config.h>
+
+#define BACKUP_PATH tzplatform_mkpath(TZ_USER_CONTENT,"Downloads/Kies/.BnR/CallLog.bk")
#ifndef EXPORT_API
#define EXPORT_API __attribute__ ((visibility("default")))
{
_EXTERN_FUNC_ENTER;
- retvm_if(file_path == NULL, SYNC_AGENT_DA_ERRORS, "file_path is NULL. FAIL !!!");
-//
-// sync_agent_da_return_e ret = SYNC_AGENT_DA_SUCCESS;
-// int err = 0;
-// FILE *file = 0;
-// int cur_size = 0;
-// CTSvalue *plog = 0; /* plog */
-//
-// /* open call log : from file text */
-// file = fopen(BACKUP_PATH, "r");
-// if (file == NULL) {
-// _DEBUG_INFO("[da_call_log_plugIn] fopen fail\n");
-// return SYNC_AGENT_DA_ERRORS;
-// }
-//
-// /* delete call log from contact service database */
-// _del_all_calllogs();
-//
-// while (1) {
-// dc_plog_list_s plog_list;
-// char temp_number[100] = { 0 };
-// char temp_extra_data2[1024] = { 0 };
-//
-// /* read call log : from file text */
-// cur_size = fscanf(file, "%100s %d %d %d %d %1024s ", temp_number, &(plog_list.related_id), &(plog_list.log_time), &(plog_list.log_type), &(plog_list.extra_data1), temp_extra_data2);
-//
-// if (cur_size == -1) {
-// _DEBUG_INFO("[da_call_log_plugIn] fscanf fail\n");
-// ret = SYNC_AGENT_DA_ERRORS;
-// goto DACI_FINISH;
-// }
-//
-// plog = contacts_svc_value_new(CTS_VALUE_PHONELOG);
-// if (plog == NULL) {
-// _DEBUG_INFO("[da_call_log_plugIn] memory allocation fail\n");
-// ret = SYNC_AGENT_DA_ERRORS;
-// goto DACI_FINISH;
-// }
-//
-// /* add call log to contact service database */
-// contacts_svc_value_set_str(plog, CTS_PLOG_VAL_NUMBER_STR, temp_number);
-// contacts_svc_value_set_int(plog, CTS_PLOG_VAL_RELATED_ID_INT, plog_list.related_id);
-// contacts_svc_value_set_int(plog, CTS_PLOG_VAL_LOG_TIME_INT, plog_list.log_time);
-// contacts_svc_value_set_int(plog, CTS_PLOG_VAL_LOG_TYPE_INT, plog_list.log_type);
-// contacts_svc_value_set_int(plog, CTS_PLOG_VAL_DURATION_INT, plog_list.extra_data1);
-// contacts_svc_value_set_str(plog, CTS_PLOG_VAL_SHORTMSG_STR, temp_extra_data2);
-//
-// _DEBUG_INFO("plog_list.number : %s\n", temp_number);
-// _DEBUG_INFO("plog_list.related_id : %d\n", plog_list.related_id);
-// _DEBUG_INFO("plog_list.log_time : %d\n", plog_list.log_time);
-// _DEBUG_INFO("plog_list.log_type : %d\n", plog_list.log_type);
-// _DEBUG_INFO("plog_list.extra_data1 : %d\n", plog_list.extra_data1);
-// _DEBUG_INFO("plog_list.extra_data2 : %s\n", temp_extra_data2);
-//
-// err = contacts_svc_insert_phonelog(plog);
-// if (err < CTS_SUCCESS) {
-// _DEBUG_INFO("[da_contact_plugIn] contacts_svc_insert_phonelog() Fail!\n");
-// ret = SYNC_AGENT_DA_ERRORS;
-// goto DACI_FINISH;
-// } else {
-// _DEBUG_INFO("[da_contact_plugIn] contacts_svc_insert_phonelog() Success!\n");
-//
-// /* memory free */
-// if (plog != NULL) {
-// contacts_svc_value_free(plog);
-// plog = 0;
-// }
-// }
-// }
-//
-//DACI_FINISH:
-//
-// if (file != NULL) {
-// fclose(file);
-// file = 0;
-// }
-//
-// /* memory free */
-// if (plog != NULL) {
-// contacts_svc_value_free(plog);
-// plog = 0;
-// }
+ retvm_if(file_path == NULL, SYNC_AGENT_DA_ERRORS, "[da_call_log_plugIn] file_path is NULL. FAIL !!!");
sync_agent_da_return_e ret = SYNC_AGENT_DA_SUCCESS;
int err = 0;
- FILE *file = 0;
int cur_size = 0;
- contacts_record_h record = NULL;
int contact_id = 0;
+ FILE *file = NULL;
+ contacts_record_h record = NULL;
/* open call log : from file text */
file = fopen(BACKUP_PATH, "r");
if (file == NULL) {
- _DEBUG_ERROR("[da_call_log_plugIn] fopen fail\n");
+ _DEBUG_ERROR("[da_call_log_plugIn] fopen() fail");
return SYNC_AGENT_DA_ERRORS;
}
/* read call log : from file text */
cur_size = fscanf(file, "%100s %d %d %d %d %1024s ", temp_number, &(plog_list.related_id), &(plog_list.log_time), &(plog_list.log_type), &(plog_list.extra_data1), temp_extra_data2);
-
if (cur_size == -1) {
- _DEBUG_ERROR("[da_call_log_plugIn] fscanf fail\n");
- ret = SYNC_AGENT_DA_ERRORS;
+ _DEBUG_INFO("[da_call_log_plugIn] The end of file");
+ ret = SYNC_AGENT_DA_SUCCESS;
goto DACI_FINISH;
}
err = contacts_record_create(_contacts_phone_log._uri, &record);
if (err != CONTACTS_ERROR_NONE) {
- _DEBUG_ERROR("[da_call_log_plugIn] contacts_record_create Fail\n");
+ _DEBUG_ERROR("[da_call_log_plugIn] contacts_record_create() Fail, err[%d]", err);
ret = _convert_service_error_to_common_error(err);
goto DACI_FINISH;
}
contacts_record_set_int(record, _contacts_phone_log.extra_data1, plog_list.extra_data1);
contacts_record_set_str(record, _contacts_phone_log.extra_data2, temp_extra_data2);
- _DEBUG_INFO("plog_list.number : %s\n", temp_number);
- _DEBUG_INFO("plog_list.related_id : %d\n", plog_list.related_id);
- _DEBUG_INFO("plog_list.log_time : %d\n", plog_list.log_time);
- _DEBUG_INFO("plog_list.log_type : %d\n", plog_list.log_type);
- _DEBUG_INFO("plog_list.extra_data1 : %d\n", plog_list.extra_data1);
- _DEBUG_INFO("plog_list.extra_data2 : %s\n", temp_extra_data2);
+ _DEBUG_INFO("[da_contact_plugIn] plog_list.number : [%s]", temp_number);
+ _DEBUG_INFO("[da_contact_plugIn] plog_list.related_id : [%d]", plog_list.related_id);
+ _DEBUG_INFO("[da_contact_plugIn] plog_list.log_time : [%d]", plog_list.log_time);
+ _DEBUG_INFO("[da_contact_plugIn] plog_list.log_type : [%d]", plog_list.log_type);
+ _DEBUG_INFO("[da_contact_plugIn] plog_list.extra_data1 : [%d]", plog_list.extra_data1);
+ _DEBUG_INFO("[da_contact_plugIn] plog_list.extra_data2 : [%s]", temp_extra_data2);
err = contacts_db_insert_record(record, &contact_id);
if (err != CONTACTS_ERROR_NONE) {
- _DEBUG_ERROR("[da_contact_plugIn] contacts_db_insert_record() Fail!\n");
+ _DEBUG_ERROR("[da_contact_plugIn] contacts_db_insert_record() Fail, err[%d]", err);
ret = _convert_service_error_to_common_error(err);
goto DACI_FINISH;
} else {
- _DEBUG_INFO("[da_contact_plugIn] contacts_db_insert_record() Success!\n");
- _DEBUG_INFO("[da_contact_plugIn] contact_id = %d", contact_id);
+ _DEBUG_INFO("[da_contact_plugIn] contacts_db_insert_record() Success, contact_id = [%d]", contact_id);
}
}
- DACI_FINISH:
+DACI_FINISH:
+ _DEBUG_INFO("[da_contact_plugIn] DACI_FINISH");
contacts_record_destroy(record, true);
if (file != NULL) {
fclose(file);
- file = 0;
+ file = NULL;
}
_EXTERN_FUNC_EXIT;
-
return ret;
}
{
_INNER_FUNC_ENTER;
-// CTSiter *iter = 0;
-// CTSvalue *plog = 0; /*plog_list */
-//
-// contacts_svc_get_list(CTS_LIST_ALL_PLOG, &iter);
-// while (CTS_SUCCESS == contacts_svc_iter_next(iter)) {
-//
-// /* get call log */
-// plog = contacts_svc_iter_get_info(iter);
-// if (plog == NULL)
-// continue;
-//
-// int id = contacts_svc_value_get_int(plog, CTS_LIST_PLOG_ID_INT);
-//
-// /* delete call log */
-// contacts_svc_delete_phonelog(CTS_PLOG_DEL_BY_ID, id);
-// _DEBUG_TRACE("[da_call_log_plugIn] id : %d\n", id);
-//
-// /* memory free */
-// if (plog != NULL) {
-// contacts_svc_value_free(plog);
-// plog = 0;
-// }
-// }
-//
-// /* memory free */
-// if (iter != NULL) {
-// contacts_svc_iter_remove(iter);
-// iter = 0;
-// }
-
contacts_error_e err = CONTACTS_ERROR_NONE;
contacts_list_h list = NULL;
err = contacts_db_get_all_records(_contacts_phone_log._uri, 0, 0, &list);
if (err != CONTACTS_ERROR_NONE) {
- _DEBUG_ERROR("[da_call_log_plugIn] contacts_db_get_all_records fail\n");
+ _DEBUG_ERROR("[da_call_log_plugIn] contacts_db_get_all_records() fail, err[%d]", err);
+ err = contacts_list_destroy(list, true);
+ if (err != CONTACTS_ERROR_NONE) {
+ _DEBUG_ERROR("[da_call_log_plugIn] contacts_list_destroy() fail, err[%d]", err);
+ }
return;
}
/* get call log */
err = contacts_list_get_current_record_p(list, &record);
if (err != CONTACTS_ERROR_NONE) {
- _DEBUG_ERROR("[da_call_log_plugIn] contacts_db_get_all_records fail\n");
+ _DEBUG_ERROR("[da_call_log_plugIn] contacts_list_get_current_record_p() fail, err[%d]", err);
continue;
}
int id;
err = contacts_record_get_int(record, _contacts_phone_log.id, &id);
if (err != CONTACTS_ERROR_NONE) {
- _DEBUG_ERROR("[da_call_log_plugIn] contacts_db_get_all_records fail\n");
+ _DEBUG_ERROR("[da_call_log_plugIn] contacts_record_get_int() fail, err[%d]", err);
continue;
}
- _DEBUG_TRACE("[da_call_log_plugIn] id : %d\n", id);
+ _DEBUG_TRACE("[da_call_log_plugIn] id : [%d]", id);
/* delete call log */
contacts_db_delete_record(_contacts_phone_log._uri, id);
}
/* memory free */
- contacts_list_destroy(list, true);
+ err = contacts_list_destroy(list, true);
+ if (err != CONTACTS_ERROR_NONE) {
+ _DEBUG_ERROR("[da_call_log_plugIn] contacts_list_destroy() fail, err[%d]", err);
+ }
_INNER_FUNC_EXIT;
}
EXPORT_API sync_agent_plugin_item_node_s *sync_agent_plugin_get_changed_item_for_folder_add(int account_id, const char *folder_id, int changepoint, int *changeCount)
{
_EXTERN_FUNC_ENTER;
-//
-// _DEBUG_INFO("[da_call-log_plugIn] account_id : %d\n", account_id);
-// _DEBUG_INFO("[da_call-log_plugIn] folder_id : %s\n", folder_id);
-// _DEBUG_INFO("[da_call-log_plugIn] changepoint : %d\n", changepoint);
-//
-// sync_agent_plugin_item_node_s *root_ptr = 0;
-// sync_agent_plugin_item_node_s *cursor_ptr = 0;
-// int chagned_count = 0;
-// int current_time = time(NULL);
-//
-// CTSiter *iter = NULL;
-// CTSvalue *plog = NULL; /*plog_list */
-//
-// char *calllog_id_str = NULL;
-//
-// int result = contacts_svc_get_list(CTS_LIST_ALL_PLOG, &iter);
-// _DEBUG_INFO("result = %d", result);
-// while (CTS_SUCCESS == contacts_svc_iter_next(iter)) {
-//
-// /* get call log */
-// plog = contacts_svc_iter_get_info(iter);
-// if (plog == NULL)
-// continue;
-//
-// /*check that item is within 7 days before since at the time */
-// if (current_time - CALLOG_SYNC_PERIODIC <= contacts_svc_value_get_int(plog, CTS_LIST_PLOG_LOG_TIME_INT)) {
-// calllog_id_str = g_strdup_printf("%d", contacts_svc_value_get_int(plog, CTS_LIST_PLOG_ID_INT));
-// _DEBUG_INFO("calllog_id_str = %s", calllog_id_str);
-//
-// if (root_ptr == NULL) {
-// root_ptr = (sync_agent_plugin_item_node_s *) calloc(1, sizeof(sync_agent_plugin_item_node_s));
-// if( root_ptr == NULL ) {
-// _DEBUG_ERROR("CALLOC failed !!!");
-// return NULL;
-// }
-// root_ptr->item_id = calllog_id_str;
-// root_ptr->next = 0;
-// cursor_ptr = root_ptr;
-// } else {
-// cursor_ptr->next = (sync_agent_plugin_item_node_s *) calloc(1, sizeof(sync_agent_plugin_item_node_s));
-// if( cursor_ptr->next == NULL ) {
-// _DEBUG_ERROR("CALLOC failed !!!");
-// return NULL;
-// }
-// cursor_ptr->next->item_id = calllog_id_str;
-// cursor_ptr->next->next = 0;
-// cursor_ptr = cursor_ptr->next;
-// }
-//
-// chagned_count++;
-//
-// /* memory free */
-// if (plog != NULL) {
-// contacts_svc_value_free(plog);
-// plog = NULL;
-// }
-// }
-// }
-//
-// if (iter != NULL) {
-// contacts_svc_iter_remove(iter);
-// iter = 0;
-// _DEBUG_INFO("[da_contact_plugIn] contacts_svc_iter_remove !! \n");
-// }
-//
-// *changeCount = chagned_count;
- _DEBUG_INFO("[da_call-log_plugIn] account_id : %d\n", account_id);
- _DEBUG_INFO("[da_call-log_plugIn] folder_id : %s\n", folder_id);
- _DEBUG_INFO("[da_call-log_plugIn] changepoint : %d\n", changepoint);
+ _DEBUG_INFO("[da_call-log_plugIn] account_id : [%d]", account_id);
+ _DEBUG_INFO("[da_call-log_plugIn] folder_id : [%s]", folder_id);
+ _DEBUG_INFO("[da_call-log_plugIn] changepoint : [%d]", changepoint);
sync_agent_plugin_item_node_s *root_ptr = 0;
sync_agent_plugin_item_node_s *cursor_ptr = 0;
err = contacts_db_get_all_records(_contacts_phone_log._uri, 0, 0, &list);
if (err != CONTACTS_ERROR_NONE) {
- _DEBUG_ERROR("[da_call_log_plugIn] contacts_db_get_all_records fail\n");
+ _DEBUG_ERROR("[da_call_log_plugIn] contacts_db_get_all_records() fail, err[%d]", err);
+ err = contacts_list_destroy(list, true);
+ if (err != CONTACTS_ERROR_NONE) {
+ _DEBUG_ERROR("[da_call_log_plugIn] contacts_list_destroy() fail, err[%d]", err);
+ }
return NULL;
}
err = contacts_list_first(list);
while (err == CONTACTS_ERROR_NONE) {
-
contacts_record_h record = NULL;
/* get call log */
err = contacts_list_get_current_record_p(list, &record);
if (err != CONTACTS_ERROR_NONE) {
- _DEBUG_ERROR("[da_call_log_plugIn] contacts_db_get_all_records fail\n");
+ _DEBUG_ERROR("[da_call_log_plugIn] contacts_list_get_current_record_p() fail, err[%d]", err);
continue;
}
contacts_record_get_int(record, _contacts_phone_log.id, &calllog_id);
calllog_id_str = g_strdup_printf("%d", calllog_id);
- _DEBUG_INFO("calllog_id_str = %s", calllog_id_str);
+ _DEBUG_INFO("[da_call_log_plugIn] Calllog_id_str = [%s]", calllog_id_str);
if (root_ptr == NULL) {
root_ptr = (sync_agent_plugin_item_node_s *) calloc(1, sizeof(sync_agent_plugin_item_node_s));
if (root_ptr == NULL) {
- _DEBUG_ERROR("CALLOC failed !!!");
+ _DEBUG_ERROR("[da_call_log_plugIn] Calloc failed, root_ptr is NULL");
+ err = contacts_list_destroy(list, true);
+ if (err != CONTACTS_ERROR_NONE) {
+ _DEBUG_ERROR("[da_call_log_plugIn] contacts_list_destroy() fail, err[%d]", err);
+ }
return NULL;
}
root_ptr->item_id = calllog_id_str;
} else {
cursor_ptr->next = (sync_agent_plugin_item_node_s *) calloc(1, sizeof(sync_agent_plugin_item_node_s));
if (cursor_ptr->next == NULL) {
- _DEBUG_ERROR("CALLOC failed !!!");
+ _DEBUG_ERROR("[da_call_log_plugIn] Calloc failed, cursor_ptr->next is NULL");
+ err = contacts_list_destroy(list, true);
+ if (err != CONTACTS_ERROR_NONE) {
+ _DEBUG_ERROR("[da_call_log_plugIn] contacts_list_destroy() fail, err[%d]", err);
+ }
+ if (root_ptr != NULL) {
+ free(root_ptr);
+ root_ptr = NULL;
+ }
return NULL;
}
cursor_ptr->next->item_id = calllog_id_str;
err = contacts_list_next(list);
}
- contacts_list_destroy(list, true);
+ err = contacts_list_destroy(list, true);
+ if (err != CONTACTS_ERROR_NONE) {
+ _DEBUG_ERROR("[da_call_log_plugIn] contacts_list_destroy() fail, err[%d]", err);
+ }
*changeCount = chagned_count;
_EXTERN_FUNC_EXIT;
-
return root_ptr;
}