[application] Change static methods to free functions. 94/196894/3
authorMichal Michalski <m.michalski2@partner.samsung.com>
Mon, 7 Jan 2019 10:24:20 +0000 (11:24 +0100)
committerMichal Michalski <m.michalski2@partner.samsung.com>
Tue, 8 Jan 2019 12:36:42 +0000 (13:36 +0100)
ApplicationUtils class had only static methods and no state.
All those methods could as well be standalone functions, and
this is the preferred option due to simpler code.

[Verification]
    TCT pass:
        tct-appcontrol-tizen-tests
        tct-application-tizen-tests

Change-Id: Ib1004a7bd8e01615d6802ef3152d6e5df8e0edea

src/application/application_manager.cc
src/application/application_utils.cc
src/application/application_utils.h
src/application/requested_application_control.cc

index 1815a80..d418bce 100644 (file)
@@ -149,7 +149,7 @@ void ApplicationManager::GetCurrentApplication(const std::string& app_id, picojs
   picojson::value app_info = picojson::value(picojson::object());
   picojson::object& app_info_obj = app_info.get<picojson::object>();
 
-  ApplicationUtils::CreateApplicationInformation(handle, &app_info_obj);
+  utils::CreateApplicationInformation(handle, &app_info_obj);
   pkgmgrinfo_appinfo_destroy_appinfo(handle);
 
   picojson::value result = picojson::value(picojson::object());
@@ -388,7 +388,7 @@ PlatformResult PrepareAppControlForLaunchAppControl(const picojson::value& args,
   const picojson::object& app_control_obj = control.get<picojson::object>();
 
   app_control_h tmp_app_control = nullptr;
-  auto result = ApplicationUtils::ApplicationControlToService(app_control_obj, &tmp_app_control);
+  auto result = utils::ApplicationControlToService(app_control_obj, &tmp_app_control);
   std::unique_ptr<std::remove_pointer<app_control_h>::type, decltype(&app_control_destroy)>
       app_control_ptr(tmp_app_control, &app_control_destroy);
 
@@ -487,7 +487,7 @@ void ApplicationManager::LaunchAppControl(const picojson::value& args) {
       if (APP_CONTROL_RESULT_SUCCEEDED == result) {
         LoggerD("App started");
         return_value_obj.insert(std::make_pair("data", picojson::value(picojson::array())));
-        if (!ApplicationUtils::ServiceToApplicationControlDataArray(
+        if (!utils::ServiceToApplicationControlDataArray(
                 reply, &return_value_obj.find("data")->second.get<picojson::array>())) {
           return_value_obj.erase("data");
         }
@@ -508,7 +508,7 @@ void ApplicationManager::LaunchAppControl(const picojson::value& args) {
     LaunchAppControlCallbackData* callback_data =
         static_cast<LaunchAppControlCallbackData*>(user_data);
 
-    auto result = ApplicationUtils::TranslateAppControlError(launch_result);
+    auto result = utils::TranslateAppControlError(launch_result);
 
     if (result.IsError()) {
       LogAndReportError(result, &(callback_data->response->get<picojson::object>()));
@@ -531,7 +531,7 @@ void ApplicationManager::LaunchAppControl(const picojson::value& args) {
    * If problems, such as failed application start occur, multiple attempts may solve the problem.
    */
   auto launch_result =
-      ApplicationUtils::TranslateAppControlError(static_cast<app_control_error_e>(app_control_send_launch_request_async(
+      utils::TranslateAppControlError(static_cast<app_control_error_e>(app_control_send_launch_request_async(
           app_control_ptr.get(), result_callback, reply_callback, launch_app_user_data)));
 
   if (launch_result.IsError()) {
@@ -547,7 +547,7 @@ namespace {
 PlatformResult TranslateLaunchError(app_control_error_e return_code) {
   ScopeLogger();
 
-  auto result = ApplicationUtils::TranslateAppControlError(return_code);
+  auto result = utils::TranslateAppControlError(return_code);
   if (ErrorCode::SECURITY_ERR == result.error_code()) {
     result = PlatformResult(ErrorCode::UNKNOWN_ERR, "Unknown error.");
   }
@@ -751,7 +751,7 @@ void ApplicationManager::FindAppControl(const picojson::value& args) {
   const picojson::object& app_control_obj = control.get<picojson::object>();
 
   app_control_h app_control = nullptr;
-  result = ApplicationUtils::ApplicationControlToService(app_control_obj, &app_control);
+  result = utils::ApplicationControlToService(app_control_obj, &app_control);
   std::shared_ptr<std::remove_pointer<app_control_h>::type> app_control_ptr(
       app_control, &app_control_destroy);  // automatically release the memory
 
@@ -779,7 +779,7 @@ void ApplicationManager::FindAppControl(const picojson::value& args) {
         picojson::array* array = static_cast<picojson::array*>(user_data);
         array->push_back(picojson::value(picojson::object()));
 
-        ApplicationUtils::CreateApplicationInformation(handle,
+        utils::CreateApplicationInformation(handle,
                                                        &array->back().get<picojson::object>());
         pkgmgrinfo_appinfo_destroy_appinfo(handle);
       }
@@ -856,7 +856,7 @@ void ApplicationManager::GetAppsContext(const picojson::value& args) {
       picojson::array* array = static_cast<picojson::array*>(user_data);
       array->push_back(picojson::value(picojson::object()));
 
-      if (!ApplicationUtils::CreateApplicationContext(app_context,
+      if (!utils::CreateApplicationContext(app_context,
                                                       &array->back().get<picojson::object>())) {
         array->pop_back();
         return false;
@@ -933,7 +933,7 @@ void ApplicationManager::GetAppContext(const picojson::value& args, picojson::ob
   }
 
   picojson::value result = picojson::value(picojson::object());
-  ApplicationUtils::CreateApplicationContext(pid, app_id, &result.get<picojson::object>());
+  utils::CreateApplicationContext(pid, app_id, &result.get<picojson::object>());
 
   ReportSuccess(result, *out);
 }
@@ -965,7 +965,7 @@ void ApplicationManager::GetAppsInfo(const picojson::value& args) {
       picojson::array* array = static_cast<picojson::array*>(user_data);
       array->push_back(picojson::value(picojson::object()));
 
-      ApplicationUtils::CreateApplicationInformation(handle,
+      utils::CreateApplicationInformation(handle,
                                                      &array->back().get<picojson::object>());
 
       return 0;
@@ -1005,7 +1005,7 @@ void ApplicationManager::GetAppInfo(const std::string& app_id, picojson::object*
   }
 
   picojson::value result = picojson::value(picojson::object());
-  ApplicationUtils::CreateApplicationInformation(handle, &result.get<picojson::object>());
+  utils::CreateApplicationInformation(handle, &result.get<picojson::object>());
   pkgmgrinfo_appinfo_destroy_appinfo(handle);
 
   ReportSuccess(result, *out);
@@ -1102,7 +1102,7 @@ void ApplicationManager::GetAppCerts(const std::string& app_id, picojson::object
     picojson::array* array = static_cast<picojson::array*>(user_data);
     array->push_back(picojson::value(picojson::object()));
 
-    ApplicationUtils::CreateApplicationCertificate(cert_name, cert_value,
+    utils::CreateApplicationCertificate(cert_name, cert_value,
                                                    &array->back().get<picojson::object>());
 
     return true;
@@ -1446,7 +1446,7 @@ void ApplicationManager::GetAppMetaData(const std::string& app_id, picojson::obj
     picojson::array* array = static_cast<picojson::array*>(user_data);
     array->push_back(picojson::value(picojson::object()));
 
-    ApplicationUtils::CreateApplicationMetaData(meta_key, meta_value,
+    utils::CreateApplicationMetaData(meta_key, meta_value,
                                                 &array->back().get<picojson::object>());
     return 0;
   };
@@ -1567,7 +1567,7 @@ class ApplicationListChangedBroker {
             continue;
           }
           auto info = data_obj.insert(std::make_pair(kData, picojson::value(picojson::object())));
-          ApplicationUtils::CreateApplicationInformation(
+          utils::CreateApplicationInformation(
               handle, &info.first->second.get<picojson::object>());
           pkgmgrinfo_appinfo_destroy_appinfo(handle);
         } break;
index 5b46388..3c834ab 100644 (file)
@@ -27,8 +27,9 @@ using namespace common;
 
 namespace extension {
 namespace application {
+namespace utils {
 
-void ApplicationUtils::CreateApplicationInformation(const pkgmgrinfo_appinfo_h handle,
+void CreateApplicationInformation(const pkgmgrinfo_appinfo_h handle,
                                                     picojson::object* app_info) {
   ScopeLogger();
 
@@ -135,7 +136,7 @@ void ApplicationUtils::CreateApplicationInformation(const pkgmgrinfo_appinfo_h h
   // size is set at first attribute access (performance)
 }
 
-bool ApplicationUtils::CreateApplicationContext(const app_context_h handle,
+bool CreateApplicationContext(const app_context_h handle,
                                                 picojson::object* app_context) {
   ScopeLogger();
   char* app_id = nullptr;
@@ -162,21 +163,21 @@ bool ApplicationUtils::CreateApplicationContext(const app_context_h handle,
   return true;
 }
 
-void ApplicationUtils::CreateApplicationContext(pid_t pid, const std::string& app_id,
+void CreateApplicationContext(pid_t pid, const std::string& app_id,
                                                 picojson::object* app_context) {
   ScopeLogger();
   app_context->insert(std::make_pair("id", picojson::value(std::to_string(pid))));
   app_context->insert(std::make_pair("appId", picojson::value(app_id)));
 }
 
-void ApplicationUtils::CreateApplicationCertificate(const char* cert_type, const char* cert_value,
+void CreateApplicationCertificate(const char* cert_type, const char* cert_value,
                                                     picojson::object* app_certificate) {
   ScopeLogger();
   app_certificate->insert(std::make_pair("type", picojson::value(cert_type)));
   app_certificate->insert(std::make_pair("value", picojson::value(cert_value)));
 }
 
-void ApplicationUtils::CreateApplicationMetaData(const char* key, const char* value,
+void CreateApplicationMetaData(const char* key, const char* value,
                                                  picojson::object* app_meta_data) {
   ScopeLogger();
   app_meta_data->insert(std::make_pair("key", picojson::value(key)));
@@ -216,7 +217,7 @@ PlatformResult SetAppControlTextField(app_control_h app_control, const std::stri
 
   auto result = setter(app_control, value.c_str());
   auto result_translated =
-      ApplicationUtils::TranslateAppControlError(static_cast<app_control_error_e>(result));
+      TranslateAppControlError(static_cast<app_control_error_e>(result));
 
   if (result_translated.IsError()) {
     LoggerD("Setting app_control's %s field failed: %s", field_name.c_str(),
@@ -253,7 +254,7 @@ PlatformResult SetAppControlLaunchModeField(app_control_h app_control,
   }
 
   auto result = app_control_set_launch_mode(app_control, LaunchModeStringToEnum(launch_mode_str));
-  return ApplicationUtils::TranslateAppControlError(static_cast<app_control_error_e>(result));
+  return TranslateAppControlError(static_cast<app_control_error_e>(result));
 }
 
 PlatformResult SetAppControlDataField(app_control_h app_control, const picojson::array& data) {
@@ -261,7 +262,7 @@ PlatformResult SetAppControlDataField(app_control_h app_control, const picojson:
 
   for (auto iter = data.begin(); iter != data.end(); ++iter) {
     if (iter->is<picojson::object>()) {
-      PlatformResult ret = ApplicationUtils::ApplicationControlDataToServiceExtraData(
+      PlatformResult ret = ApplicationControlDataToServiceExtraData(
           iter->get<picojson::object>(), app_control);
       if (ret.IsError()) {
         return ret;
@@ -294,7 +295,7 @@ PlatformResult SetAppControlFieldIfValueSpecified(
 
 }  // namespace
 
-PlatformResult ApplicationUtils::ApplicationControlToService(
+PlatformResult ApplicationControlToService(
     const picojson::object& app_control_obj, app_control_h* app_control) {
   ScopeLogger();
 
@@ -366,7 +367,7 @@ PlatformResult ApplicationUtils::ApplicationControlToService(
   return PlatformResult(ErrorCode::NO_ERROR);
 }
 
-PlatformResult ApplicationUtils::ApplicationControlDataToServiceExtraData(
+PlatformResult ApplicationControlDataToServiceExtraData(
     const picojson::object& app_control_data, app_control_h app_control) {
   ScopeLogger();
 
@@ -408,7 +409,7 @@ PlatformResult ApplicationUtils::ApplicationControlDataToServiceExtraData(
   return PlatformResult(ErrorCode::NO_ERROR);
 }
 
-void ApplicationUtils::ServiceToApplicationControl(app_control_h app_control,
+void ServiceToApplicationControl(app_control_h app_control,
                                                    picojson::object* app_control_obj) {
   ScopeLogger();
 
@@ -484,7 +485,7 @@ void ApplicationUtils::ServiceToApplicationControl(app_control_h app_control,
       app_control, &app_control_obj->find(kDataAppControlField)->second.get<picojson::array>());
 }
 
-void ApplicationUtils::ServiceExtraDataToApplicationControlData(
+void ServiceExtraDataToApplicationControlData(
     app_control_h app_control, const std::string& key, picojson::object* app_control_data) {
   ScopeLogger();
 
@@ -535,14 +536,25 @@ void ApplicationUtils::ServiceExtraDataToApplicationControlData(
   app_control_data->insert(std::make_pair("value", picojson::value(value_array)));
 }
 
-bool ApplicationUtils::ServiceToApplicationControlDataArray(app_control_h app_control,
+bool ServiceExtraDataCallback(app_control_h app_control, const char* key,
+                                                void* user_data) {
+  ScopeLogger();
+  picojson::array* data = static_cast<picojson::array*>(user_data);
+
+  data->push_back(picojson::value(picojson::object()));
+  ServiceExtraDataToApplicationControlData(app_control, key, &data->back().get<picojson::object>());
+
+  return true;
+}
+
+bool ServiceToApplicationControlDataArray(app_control_h app_control,
                                                             picojson::array* data) {
   ScopeLogger();
   int ret = app_control_foreach_extra_data(app_control, ServiceExtraDataCallback, data);
   return APP_CONTROL_ERROR_NONE == ret;
 }
 
-PlatformResult ApplicationUtils::TranslateAppControlError(app_control_error_e return_code) {
+PlatformResult TranslateAppControlError(app_control_error_e return_code) {
   ScopeLogger("Return code: %d (%s)", static_cast<int>(return_code),
               get_error_message(static_cast<int>(return_code)));
 
@@ -572,16 +584,6 @@ PlatformResult ApplicationUtils::TranslateAppControlError(app_control_error_e re
   }
 }
 
-bool ApplicationUtils::ServiceExtraDataCallback(app_control_h app_control, const char* key,
-                                                void* user_data) {
-  ScopeLogger();
-  picojson::array* data = static_cast<picojson::array*>(user_data);
-
-  data->push_back(picojson::value(picojson::object()));
-  ServiceExtraDataToApplicationControlData(app_control, key, &data->back().get<picojson::object>());
-
-  return true;
-}
-
+}  // namespace utils
 }  // namespace application
 }  // namespace extension
index 308827b..cdc935f 100644 (file)
 
 namespace extension {
 namespace application {
+namespace utils {
 
-class ApplicationUtils {
- public:
-  static void CreateApplicationInformation(const pkgmgrinfo_appinfo_h handle,
-                                           picojson::object* app_info);
+void CreateApplicationInformation(const pkgmgrinfo_appinfo_h handle, picojson::object* app_info);
 
-  static bool CreateApplicationContext(const app_context_h handle, picojson::object* app_context);
+bool CreateApplicationContext(const app_context_h handle, picojson::object* app_context);
 
-  static void CreateApplicationContext(pid_t pid, const std::string& app_id,
-                                       picojson::object* app_context);
+void CreateApplicationContext(pid_t pid, const std::string& app_id,
+    picojson::object* app_context);
 
-  static void CreateApplicationCertificate(const char* cert_type, const char* cert_value,
-                                           picojson::object* app_certificate);
+void CreateApplicationCertificate(const char* cert_type, const char* cert_value,
+    picojson::object* app_certificate);
 
-  static void CreateApplicationMetaData(const char* key, const char* value,
-                                        picojson::object* app_meta_data);
+void CreateApplicationMetaData(const char* key, const char* value, picojson::object* app_meta_data);
 
-  static common::PlatformResult ApplicationControlToService(const picojson::object& app_control_obj,
-                                                            app_control_h* app_control);
+common::PlatformResult ApplicationControlToService(const picojson::object& app_control_obj,
+    app_control_h* app_control);
 
-  static common::PlatformResult ApplicationControlDataToServiceExtraData(
-      const picojson::object& app_control_data, app_control_h app_control);
+common::PlatformResult ApplicationControlDataToServiceExtraData(
+    const picojson::object& app_control_data, app_control_h app_control);
 
-  static void ServiceToApplicationControl(app_control_h app_control,
-                                          picojson::object* app_control_obj);
+void ServiceToApplicationControl(app_control_h app_control, picojson::object* app_control_obj);
 
-  static void ServiceExtraDataToApplicationControlData(app_control_h app_control,
-                                                       const std::string& key,
-                                                       picojson::object* app_control_data);
+void ServiceExtraDataToApplicationControlData(app_control_h app_control, const std::string& key,
+    picojson::object* app_control_data);
 
-  static bool ServiceToApplicationControlDataArray(app_control_h app_control,
-                                                   picojson::array* data);
+bool ServiceToApplicationControlDataArray(app_control_h app_control, picojson::array* data);
 
-  static common::PlatformResult TranslateAppControlError(app_control_error_e error_code);
-
- private:
-  static bool ServiceExtraDataCallback(app_control_h app_control, const char* key, void* user_data);
-};
+common::PlatformResult TranslateAppControlError(app_control_error_e error_code);
 
+}  // namespace utils
 }  // namespace application
 }  // namespace extension
 
index d0a8661..eeec2e8 100644 (file)
@@ -81,7 +81,7 @@ void RequestedApplicationControl::ToJson(picojson::object* out) {
     out->insert(std::make_pair("callerAppId", picojson::value(caller_app_id_)));
     auto appControl =
         out->insert(std::make_pair("appControl", picojson::value(picojson::object())));
-    ApplicationUtils::ServiceToApplicationControl(
+    utils::ServiceToApplicationControl(
         app_control_.get(), &appControl.first->second.get<picojson::object>());
   }
 }
@@ -115,10 +115,10 @@ void RequestedApplicationControl::ReplyResult(const picojson::value& args, picoj
 
   if (!data.empty()) {
     for (auto iter = data.begin(); iter != data.end(); ++iter) {
-      result = ApplicationUtils::ApplicationControlDataToServiceExtraData(
+      result = utils::ApplicationControlDataToServiceExtraData(
           iter->get<picojson::object>(), reply);
       if (result.IsError()) {
-        LogAndReportError(result, out, ("Failed ApplicationControlDataToServiceExtraData()"));
+        LogAndReportError(result, out, ("Failed utils::ApplicationControlDataToServiceExtraData()"));
         return;
       }
     }