From bcfd150a3f7dcfec09e0dfd99ccf62789cd8b0ec Mon Sep 17 00:00:00 2001 From: Junghyun Yeon Date: Mon, 30 Aug 2021 18:58:34 +0900 Subject: [PATCH] Change API behavior Change pkgmgr_client_res_uninstall to synchronous. Change-Id: I3668140687f5642eed4c1e49b79ca153e451507f Signed-off-by: Junghyun Yeon --- client/include/package-manager.h | 8 +++----- client/src/pkgmgr.c | 36 ++++++------------------------------ 2 files changed, 9 insertions(+), 35 deletions(-) diff --git a/client/include/package-manager.h b/client/include/package-manager.h index eac1ea1..b299d35 100644 --- a/client/include/package-manager.h +++ b/client/include/package-manager.h @@ -1321,17 +1321,15 @@ int pkgmgr_client_res_remove(pkgmgr_client *pc, pkgmgr_res_copy_handler event_cb * * @param[in] pc pkgmgr_client * @param[in] pkgid package id - * @param[in] event_cb user callback - * @param[in] user_data user data - * @return request_id (>0) if success, error code(<0) if fail\n + * @return PKGMGR_R_OK if success, error code(<0) if fail\n * @retval PKGMGR_R_OK success * @retval PKGMGR_R_ECOMM communication error * @retval PKGMGR_R_EINVAL invalid argument * @retval PKGMGR_R_ENOMEM out of memory * @retval PKGMGR_R_EPRIV privilege denied */ -int pkgmgr_client_res_uninstall(pkgmgr_client *pc, const char *pkgid, pkgmgr_res_copy_handler event_cb, void *user_data); -int pkgmgr_client_res_usr_uninstall(pkgmgr_client *pc, const char *pkgid, pkgmgr_res_copy_handler event_cb, void *user_data, uid_t uid); +int pkgmgr_client_res_uninstall(pkgmgr_client *pc, const char *pkgid); +int pkgmgr_client_res_usr_uninstall(pkgmgr_client *pc, const char *pkgid, uid_t uid); /** * @brief This API creates resource event info. diff --git a/client/src/pkgmgr.c b/client/src/pkgmgr.c index 4248ac2..c8081ee 100644 --- a/client/src/pkgmgr.c +++ b/client/src/pkgmgr.c @@ -3015,23 +3015,19 @@ API int pkgmgr_client_res_remove(pkgmgr_client *pc, return cb_info->req_id; } -API int pkgmgr_client_res_uninstall(pkgmgr_client *pc, const char *pkgid, - pkgmgr_res_copy_handler event_cb, void *user_data) +API int pkgmgr_client_res_uninstall(pkgmgr_client *pc, const char *pkgid) { - return pkgmgr_client_res_usr_uninstall(pc, pkgid, event_cb, - user_data, _getuid()); + return pkgmgr_client_res_usr_uninstall(pc, pkgid, _getuid()); } API int pkgmgr_client_res_usr_uninstall(pkgmgr_client *pc, const char *pkgid, - pkgmgr_res_copy_handler event_cb, void *user_data, uid_t uid) + uid_t uid) { GVariant *result; int ret = PKGMGR_R_ECOMM; - char *req_key = NULL; struct pkgmgr_client_t *client = (struct pkgmgr_client_t *)pc; - struct cb_info *cb_info; - if (pc == NULL || pkgid == NULL || event_cb == NULL) { + if (pc == NULL || pkgid == NULL) { ERR("invalid parameter"); return PKGMGR_R_EINVAL; } @@ -3044,30 +3040,10 @@ API int pkgmgr_client_res_usr_uninstall(pkgmgr_client *pc, const char *pkgid, return ret; } - g_variant_get(result, "(i&s)", &ret, &req_key); - if (req_key == NULL) { - g_variant_unref(result); - return PKGMGR_R_ECOMM; - } - if (ret != PKGMGR_R_OK) { - g_variant_unref(result); - return ret; - } - - cb_info = __create_res_copy_event_cb_info(client, - event_cb, user_data, req_key); + g_variant_get(result, "(i)", &ret); g_variant_unref(result); - if (cb_info == NULL) - return PKGMGR_R_ENOMEM; - ret = pkgmgr_client_connection_set_callback(client, cb_info); - if (ret != PKGMGR_R_OK) { - __free_cb_info(cb_info); - return ret; - } - client->cb_info_list = g_list_append(client->cb_info_list, cb_info); - - return cb_info->req_id; + return ret; } API pkgmgr_res_event_info *pkgmgr_res_event_info_new() -- 2.7.4