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
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());
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);
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");
}
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>()));
* 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()) {
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.");
}
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
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);
}
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;
}
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);
}
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;
}
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);
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;
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;
};
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;
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();
// 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;
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)));
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(),
}
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) {
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;
} // namespace
-PlatformResult ApplicationUtils::ApplicationControlToService(
+PlatformResult ApplicationControlToService(
const picojson::object& app_control_obj, app_control_h* app_control) {
ScopeLogger();
return PlatformResult(ErrorCode::NO_ERROR);
}
-PlatformResult ApplicationUtils::ApplicationControlDataToServiceExtraData(
+PlatformResult ApplicationControlDataToServiceExtraData(
const picojson::object& app_control_data, app_control_h app_control) {
ScopeLogger();
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();
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();
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)));
}
}
-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
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
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>());
}
}
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;
}
}