return 0;
}
+int _app_property_set_real_widget_id(uid_t uid, bundle *b)
+{
+ app_property_h app_property;
+ const char *widget_id = NULL;
+ const char *comp_type;
+ struct appinfo *ai;
+ const char *appid;
+ GList *iter;
+
+ appid = bundle_get_val(b, AUL_K_APPID);
+ if (!appid)
+ return -1;
+
+ ai = _appinfo_find(uid, appid);
+ if (!ai)
+ return -1;
+
+ comp_type = _appinfo_get_value(ai, AIT_COMPTYPE);
+ if (comp_type == NULL || strcmp(comp_type, APP_TYPE_WIDGET) != 0)
+ return -1;
+
+ app_property = _app_property_find(uid);
+ if (!app_property)
+ return -1;
+
+ iter = app_property->metadata_list;
+ while (iter) {
+ struct metadata_entity *entity = iter->data;
+ if (!strcmp(entity->appid, appid) &&
+ !strcmp(entity->key, METADATA_WIDGET_ALIAS_ID)) {
+ widget_id = entity->value;
+ break;
+ }
+
+ iter = g_list_next(iter);
+ }
+
+ if (widget_id == NULL || widget_id[0] == '\0')
+ return -1;
+
+ _W("alias_id(%s), widget_id(%s)", appid, widget_id);
+ bundle_del(b, AUL_K_ORG_APPID);
+ bundle_add(b, AUL_K_ORG_APPID, appid);
+ bundle_del(b, AUL_K_APPID);
+ bundle_add(b, AUL_K_APPID, widget_id);
+ return 0;
+}
+
static int __dispatch_app_set_alias_appid(request_h req)
{
int ret;
{ METADATA_LARGEMEMORY, NULL },
{ METADATA_OOMTERMINATION, NULL },
{ METADATA_VIPAPP, NULL },
+ { METADATA_WIDGET_ALIAS_ID, NULL },
};
int r;
int i;
extern "C" {
#endif
+#undef METADATA_LARGEMEMORY
#define METADATA_LARGEMEMORY "http://tizen.org/metadata/largememory"
+#undef METADATA_OOMTERMINATION
#define METADATA_OOMTERMINATION "http://tizen.org/metadata/oomtermination"
+#undef METADATA_VIPAPP
#define METADATA_VIPAPP "http://tizen.org/metadata/vipapp"
+#undef METADATA_WIDGET_ALIAS_ID
+#define METADATA_WIDGET_ALIAS_ID "http://tizen.org/metadata/widget/aliasid"
+
typedef struct app_property_s *app_property_h;
int _app_property_add_alias_info(app_property_h app_property,
int _app_property_set_real_appid(uid_t uid, bundle *b);
+int _app_property_set_real_widget_id(uid_t uid, bundle *b);
+
#ifdef __cplusplus
}
#endif