Move client status checker to common 13/239813/9
authorJeon Sang-Heon <sh95.jeon@samsung.com>
Tue, 28 Jul 2020 17:43:16 +0000 (17:43 +0000)
committerJeon Sang-Heon <sh95.jeon@samsung.com>
Fri, 7 Aug 2020 17:24:49 +0000 (17:24 +0000)
- client status(booting) is unique, so move to common

Change-Id: I7d2065ac8131696b8717a7eb6fec3a623a2e036b
Signed-off-by: Jeon Sang-Heon <sh95.jeon@samsung.com>
update-manager/client-controller.c
update-manager/client-status-checker.c [deleted file]
update-manager/common/common-client-status-checker.c [new file with mode: 0644]
update-manager/main.c
update-manager/update-manager.h

index a7cbbc6fe4599505fe474c859ea621421a991c47..355e65954fd2aadcbe9f92772111417c2f5883e6 100644 (file)
@@ -19,7 +19,7 @@ int client_controller_process_launch_request()
                goto request_destroy;
        }
 
-       if (!client_status_checker_is_success()) {
+       if (!common_client_status_checker_is_success()) {
                _I("Failed to launch client, user session is unset, current top : %d", top);
                goto request_destroy;
        }
diff --git a/update-manager/client-status-checker.c b/update-manager/client-status-checker.c
deleted file mode 100644 (file)
index 3515e72..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-#include "update-manager.h"
-
-static int boot_status = -1;
-
-bool client_status_checker_is_success()
-{
-       return (boot_status == VCONFKEY_SYSMAN_BOOTING_SUCCESS);
-}
-
-void client_status_checker_callback(keynode_t *node, void *user_data)
-{
-       int ret = 0;
-
-       ret = vconf_keynode_get_type(node);
-       if (ret == VCONF_TYPE_INT) {
-               boot_status = vconf_keynode_get_int(node);
-               if (client_status_checker_is_success()) {
-                       _I("Success to get bootstatus : success");
-
-                       ret = vconf_ignore_key_changed(VCONFKEY_SYSMAN_BOOTINGSTATUS, client_status_checker_callback);
-                       if (ret == VCONF_OK)
-                               _I("Success to remove bootstatus callback");
-                       else
-                               _W("vconf_ignore_key_changed for %s failed : %d", VCONFKEY_SYSMAN_BOOTINGSTATUS, ret);
-
-                       ret = client_controller_process_launch_request();
-                       if (ret < 0)
-                               _E("Failed to process launch client : %d", ret);
-               }
-       } else {
-               _E("Invalid vconf key type : %d", ret);
-       }
-}
-
-int client_status_checker_init()
-{
-       int ret = 0;
-
-       _I("Start process to get boot status");
-       ret = vconf_get_int(VCONFKEY_SYSMAN_BOOTINGSTATUS, &boot_status);
-       if (ret != VCONF_OK) {
-               _E("vconf_get_int for %s failed: %d", VCONFKEY_SYSMAN_BOOTINGSTATUS, ret);
-               return -1;
-       }
-
-       if (client_status_checker_is_success()) {
-               _I("Success to get boot status : success");
-       } else {
-               ret = vconf_notify_key_changed(VCONFKEY_SYSMAN_BOOTINGSTATUS, client_status_checker_callback, NULL);
-               if (ret != VCONF_OK) {
-                       _E("vconf_notify_key_changed for %s failed : %d", VCONFKEY_SYSMAN_BOOTINGSTATUS, ret);
-                       return -1;
-               }
-               _I("Success to register boot status callback");
-       }
-
-       return 0;
-}
-
-int client_status_checker_fini()
-{
-       int ret = 0;
-
-       if (!client_status_checker_is_success()) {
-               ret = vconf_ignore_key_changed(VCONFKEY_SYSMAN_BOOTINGSTATUS, client_status_checker_callback);
-               if (ret != VCONF_OK)
-                       _W("vconf_ignore_key_changed for %s failed : %d", VCONFKEY_SYSMAN_BOOTINGSTATUS, ret);
-       }
-
-       return 0;
-}
diff --git a/update-manager/common/common-client-status-checker.c b/update-manager/common/common-client-status-checker.c
new file mode 100644 (file)
index 0000000..19bb022
--- /dev/null
@@ -0,0 +1,71 @@
+#include "../update-manager.h"
+
+static int boot_status = -1;
+
+bool common_client_status_checker_is_success()
+{
+       return (boot_status == VCONFKEY_SYSMAN_BOOTING_SUCCESS);
+}
+
+void common_client_status_checker_callback(keynode_t *node, void *user_data)
+{
+       int ret = 0;
+
+       ret = vconf_keynode_get_type(node);
+       if (ret == VCONF_TYPE_INT) {
+               boot_status = vconf_keynode_get_int(node);
+               if (common_client_status_checker_is_success()) {
+                       _I("Success to get bootstatus : success");
+
+                       ret = vconf_ignore_key_changed(VCONFKEY_SYSMAN_BOOTINGSTATUS, common_client_status_checker_callback);
+                       if (ret == VCONF_OK)
+                               _I("Success to remove bootstatus callback");
+                       else
+                               _W("vconf_ignore_key_changed for %s failed : %d", VCONFKEY_SYSMAN_BOOTINGSTATUS, ret);
+
+                       ret = client_controller_process_launch_request();
+                       if (ret < 0)
+                               _E("Failed to process launch client : %d", ret);
+               }
+       } else {
+               _E("Invalid vconf key type : %d", ret);
+       }
+}
+
+int common_client_status_checker_init()
+{
+       int ret = 0;
+
+       _I("Start process to get boot status");
+       ret = vconf_get_int(VCONFKEY_SYSMAN_BOOTINGSTATUS, &boot_status);
+       if (ret != VCONF_OK) {
+               _E("vconf_get_int for %s failed: %d", VCONFKEY_SYSMAN_BOOTINGSTATUS, ret);
+               return -1;
+       }
+
+       if (common_client_status_checker_is_success()) {
+               _I("Success to get boot status : success");
+       } else {
+               ret = vconf_notify_key_changed(VCONFKEY_SYSMAN_BOOTINGSTATUS, common_client_status_checker_callback, NULL);
+               if (ret != VCONF_OK) {
+                       _E("vconf_notify_key_changed for %s failed : %d", VCONFKEY_SYSMAN_BOOTINGSTATUS, ret);
+                       return -1;
+               }
+               _I("Success to register boot status callback");
+       }
+
+       return 0;
+}
+
+int common_client_status_checker_fini()
+{
+       int ret = 0;
+
+       if (!common_client_status_checker_is_success()) {
+               ret = vconf_ignore_key_changed(VCONFKEY_SYSMAN_BOOTINGSTATUS, common_client_status_checker_callback);
+               if (ret != VCONF_OK)
+                       _W("vconf_ignore_key_changed for %s failed : %d", VCONFKEY_SYSMAN_BOOTINGSTATUS, ret);
+       }
+
+       return 0;
+}
index 36b1e0155cf1bb376d0fde1e8e58cc04bef0a4e2..51008f1b5413b5106583af4d6318e328d3ad4c89 100644 (file)
@@ -19,7 +19,7 @@ int main(int argc, char *argv[])
                goto main_destroy;
        }
 
-       ret = client_status_checker_init();
+       ret = common_client_status_checker_init();
        if (ret < 0) {
                _E("Failed to initialize client status checker : %d", ret);
                goto main_destroy;
@@ -60,7 +60,7 @@ main_destroy:
        if (ret < 0)
                _W("Failed to finalize fota client info checker : %d", ret);
 
-       ret = client_status_checker_fini();
+       ret = common_client_status_checker_fini();
        if (ret < 0)
                _W("Failed to finalize client status checker : %d", ret);
 
index 65e41cf45238bf5d34012d7d6abdab22159f1910..dccebd2d119c00904dce75d07bb54d89020bf095 100644 (file)
@@ -78,16 +78,16 @@ int fota_client_info_checker_init(void);
 int fota_client_info_checker_fini(void);
 char *fota_client_info_get_appid(void);
 
-int client_status_checker_init(void);
-int client_status_checker_fini(void);
-bool client_status_checker_is_success(void);
-
 int client_controller_process_launch_request(void);
 int client_controller_add_launch_request_with_data(const char *, const char *);
 
 int common_storage_checker_init(void);
 int common_storage_checker_fini(void);
 
+int common_client_status_checker_init(void);
+int common_client_status_checker_fini(void);
+bool common_client_status_checker_is_success(void);
+
 int common_client_info_checker_callback(pkgmgrinfo_appinfo_h, char **);
 int common_client_info_checker_init(const char*, const char*, pkgmgrinfo_app_list_cb);