From: Youngjae Shin Date: Tue, 10 Mar 2020 02:59:52 +0000 (+0900) Subject: revise app action X-Git-Tag: submit/tizen/20200406.072014~6 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=619ee61a894d0880911be50cd678667f9905ff9a;p=platform%2Fcore%2Fsystem%2Fmodes-plugins.git revise app action --- diff --git a/app/AppActionLaunch.cpp b/app/AppActionLaunch.cpp index 14822bf..1d1fa5e 100644 --- a/app/AppActionLaunch.cpp +++ b/app/AppActionLaunch.cpp @@ -35,10 +35,16 @@ AppActionLaunch::AppActionLaunch() int AppActionLaunch::set(const std::string &val) { + requestVal = val; + bool running; - app_manager_is_running(val.c_str(), &running); - if (running) - INFO("It's already running before started mode-supervisor daemon"); + int ret = app_manager_is_running(val.c_str(), &running); + if (APP_MANAGER_ERROR_NONE != ret) { + ERR("app_manager_is_running(%s) Fail(%d)", val.c_str(), ret); + } else if (running) { + INFO("It's already running"); + return MODES_ERROR_NONE; + } app_control_h service; app_control_create(&service); @@ -46,15 +52,13 @@ int AppActionLaunch::set(const std::string &val) app_control_set_operation(service, APP_CONTROL_OPERATION_DEFAULT); app_control_set_launch_mode(service, APP_CONTROL_LAUNCH_MODE_SINGLE); - int ret = app_control_send_launch_request(service, nullptr, nullptr); + ret = app_control_send_launch_request(service, NULL, NULL); if (APP_CONTROL_ERROR_NONE != ret) { ERR("app_control_send_launch_request() Fail(%s)", get_error_message(ret)); return MODES_ERROR_SYSTEM; } app_control_destroy(service); - appID = val; - return MODES_ERROR_NONE; } @@ -63,15 +67,17 @@ void AppActionLaunch::undo() bool running; app_context_h runAppContext; - app_manager_is_running(appID.c_str(), &running); - if (!running) { - DBG("It's NOT running"); + int ret = app_manager_is_running(requestVal.c_str(), &running); + if (APP_MANAGER_ERROR_NONE != ret) { + ERR("app_manager_is_running(%s) Fail(%d)", requestVal.c_str(), ret); + } else if (false == running) { + WARN("It's NOT running"); return; } - int ret = app_manager_get_app_context(appID.c_str(), &runAppContext); + ret = app_manager_get_app_context(requestVal.c_str(), &runAppContext); if (APP_MANAGER_ERROR_NONE != ret) { - ERR("app_manager_get_app_context(%s) Fail(%s)", appID.c_str(), get_error_message(ret)); + ERR("app_manager_get_app_context(%s) Fail(%s)", requestVal.c_str(), get_error_message(ret)); return; } ret = app_manager_terminate_app(runAppContext); @@ -81,12 +87,12 @@ void AppActionLaunch::undo() std::string AppActionLaunch::serialize() { - return appID; + return requestVal; } int AppActionLaunch::parse(const std::string &archive) { - appID = archive; + requestVal = archive; return MODES_ERROR_NONE; } @@ -94,7 +100,7 @@ int AppActionLaunch::setChangedCallback(valueChangedCB callback, void *userData) { RETV_IF(nullptr == callback, MODES_ERROR_INVALID_PARAMETER); - int err = app_manager_set_app_context_status_cb(appContextStatusCB, appID.c_str(), this); + int err = app_manager_set_app_context_status_cb(appContextStatusCB, requestVal.c_str(), this); if (APP_MANAGER_ERROR_NONE != err) { ERR("app_manager_set_app_context_status_cb() Fail(%s)", get_error_message(err)); return MODES_ERROR_SYSTEM; @@ -108,7 +114,7 @@ int AppActionLaunch::setChangedCallback(valueChangedCB callback, void *userData) void AppActionLaunch::unSetChangedCallback(valueChangedCB callback, void *userData) { - int ret = app_manager_unset_app_context_status_cb(appContextStatusCB, appID.c_str()); + int ret = app_manager_unset_app_context_status_cb(appContextStatusCB, requestVal.c_str()); if (APP_MANAGER_ERROR_NONE != ret) ERR("app_manager_unset_app_context_status_cb() Fail(%s)", get_error_message(ret)); @@ -118,6 +124,8 @@ void AppActionLaunch::unSetChangedCallback(valueChangedCB callback, void *userDa void AppActionLaunch::appContextStatusCB(app_context_h app_context, app_context_status_e status, void *userData) { + AppActionLaunch *action = (AppActionLaunch*)userData; + RET_IF(nullptr == userData); RET_IF(APP_CONTEXT_STATUS_TERMINATED != status); @@ -128,10 +136,8 @@ void AppActionLaunch::appContextStatusCB(app_context_h app_context, app_context_ return; } - AppActionLaunch *action = (AppActionLaunch*)userData; - if (appid == action->appID && action->cb) + if (action->cb && appid == action->requestVal) action->cb(action->cbData); free(appid); - return; } diff --git a/app/AppActionLaunch.h b/app/AppActionLaunch.h index ae70d2a..f2bb7fb 100644 --- a/app/AppActionLaunch.h +++ b/app/AppActionLaunch.h @@ -36,7 +36,7 @@ public: void unSetChangedCallback(valueChangedCB callback, void *userData) override; private: static void appContextStatusCB(app_context_h app_context, app_context_status_e status, void *user_data); - std::string appID; + std::string requestVal; valueChangedCB cb; void *cbData; }; diff --git a/app/AppFactory.cpp b/app/AppFactory.cpp index 5683f34..250b307 100644 --- a/app/AppFactory.cpp +++ b/app/AppFactory.cpp @@ -27,7 +27,7 @@ AppFactory::AppFactory() AppAction* AppFactory::createAction(const std::string &key) { auto search = actionMap.find(key); - if (search == actionMap.end()) { + if (actionMap.end() == search) { ERR("No AppAction(%s)", key.c_str()); return nullptr; } diff --git a/unittests/mdsp_test_app.cpp b/unittests/mdsp_test_app.cpp index 3801df9..5a81489 100644 --- a/unittests/mdsp_test_app.cpp +++ b/unittests/mdsp_test_app.cpp @@ -43,7 +43,7 @@ protected: g_main_loop_unref(loop); loop = NULL; objectDelete(plugin); - plugin = NULL; + plugin = nullptr; } static gboolean appUndoTimeout(gpointer data) @@ -104,7 +104,7 @@ protected: const char *AppPluginTest::testApp = "org.tizen.setting"; int AppPluginTest::result = 0; -Plugin *AppPluginTest::plugin = NULL; +Plugin *AppPluginTest::plugin = nullptr; GMainLoop *AppPluginTest::loop = NULL; TEST_F(AppPluginTest, CheckSetUndo) @@ -116,7 +116,7 @@ TEST_F(AppPluginTest, CheckSetUndo) TEST_F(AppPluginTest, checkChangedCB) { sleep(3); - g_idle_add(checkChangedCBIdler, nullptr); + g_idle_add(checkChangedCBIdler, NULL); g_main_loop_run(loop); }