return 0;
}
+static int __dispatch_app_get_app_control_default_app(request_h req) {
+ tizen_base::Bundle b;
+ bundle* kb = _request_get_bundle(req);
+ const char* operation = aul_svc_get_operation(kb);
+ if (operation == nullptr) {
+ _E("Failed to get operation");
+ aul_sock_send_bundle_with_fd(_request_remove_fd(req), -EINVAL,
+ b.GetHandle(), AUL_SOCK_NOREPLY);
+ return -1;
+ }
+
+ const char* mime = aul_svc_get_mime(kb);
+ const char* uri = aul_svc_get_uri(kb);
+
+ std::string app_control(operation);
+ app_control += "|";
+ app_control += (uri == nullptr) ? "NULL" : uri;
+ app_control += "|";
+ app_control += (mime == nullptr) ? "NULL" : mime;
+
+ uid_t uid = _request_get_target_uid(req);
+ std::string app_id = AppSvcManager::GetInst().GetDefaultAppId(
+ uid, app_control);
+ if (!app_id.empty())
+ b.Add(AUL_K_APPID, app_id);
+
+ aul_sock_send_bundle_with_fd(_request_remove_fd(req), APP_GET_INFO_OK,
+ b.GetHandle(), AUL_SOCK_NOREPLY);
+ _I("[APP_GET_APP_CONTROL_DEFAULT_APP] app_control(%s), app_id(%s)",
+ app_control.c_str(), app_id.c_str());
+ return 0;
+}
+
+
int _app_control_resolver_init(void) {
static request_cmd_dispatch dispatch_table[] = {
{
.cmd = APP_UNSET_APP_CONTROL_DEFAULT_APP,
.callback = __dispatch_app_unset_app_control_default_app
},
+ {
+ .cmd = APP_GET_APP_CONTROL_DEFAULT_APP,
+ .callback = __dispatch_app_get_app_control_default_app
+ },
};
static cynara_checker cynara_checkers[] = {
{