4 #include <bundle_internal.h>
5 #include <pkgmgr-info.h>
8 #include "delegator_config.h"
9 #include "delegator_client_gdbus_generated.h"
10 #include "delegator_client.h"
11 #include "aul_svc_priv_key.h"
16 #define LOG_TAG "DELEGATOR_CLIENT"
18 int delegator_client_launch(const char *zone, bundle* kb)
22 GDBusConnection *conn;
23 OrgTizenAulDelegator *proxy;
26 return AUL_SVC_RET_EINVAL;
28 conn = g_bus_get_sync(G_BUS_TYPE_SYSTEM, NULL, &error);
30 SECURE_LOGE("gdbus connection error (%s)", error->message);
35 "gdbus connection is not set, even gdbus error isn't raised");
36 return AUL_SVC_RET_ERROR;
39 proxy = org_tizen_aul_delegator_proxy_new_sync(conn,
40 G_DBUS_PROXY_FLAGS_NONE, DELEGATOR_INTERFACE,
44 SECURE_LOGE("Unable to create proxy[err=%s]\n", error->message);
47 return AUL_SVC_RET_ERROR;
50 bundle_raw* br = NULL;
54 bundle_encode(kb, &br, &len);
56 org_tizen_aul_delegator_call_launch_sync(proxy, zone,
57 (const gchar *) br, &ret,
62 g_dbus_connection_flush_sync(conn, NULL, NULL);
68 int delegator_client_can_jump(char **zone, bundle *kb)
73 bundle_get_str(kb, AUL_SVC_K_OPERATION, &val);
74 if (val != NULL && strcmp(AUL_SVC_OPERATION_JUMP, val) == 0) {
78 bundle_del(kb, AUL_SVC_K_OPERATION);
79 bundle_get_str(kb, AUL_SVC_K_JUMP_ORIGIN_OPERATION, &op);
80 bundle_get_str(kb, AUL_SVC_K_JUMP_ZONE_NAME, &domain);
84 bundle_add_str(kb, AUL_SVC_K_OPERATION, op);
87 *zone = strdup(domain);
88 bundle_del(kb, AUL_SVC_K_JUMP_ZONE_NAME);
89 bundle_del(kb, AUL_SVC_K_JUMP_ORIGIN_OPERATION);
90 return AUL_SVC_RET_OK;
95 return AUL_SVC_RET_EREJECTED;