From: jh9216.park Date: Wed, 20 Jul 2022 02:44:29 +0000 (-0400) Subject: Support publishing system events X-Git-Tag: submit/tizen/20220721.060748~1 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=refs%2Fchanges%2F77%2F278377%2F3;p=platform%2Fcore%2Fapi%2Fapp-event.git Support publishing system events Change-Id: I1094feec08ee54716543156bcd5a88f7fda2e144 Signed-off-by: jh9216.park --- diff --git a/src/event.c b/src/event.c index c0c174b..e2d2924 100644 --- a/src/event.c +++ b/src/event.c @@ -33,6 +33,7 @@ #define LOG_TAG "CAPI_APPFW_EVENT" #define MAX_SIZE 100 #define MAX_APP_ID_LEN 256 +#define SYS_EVENT_NAME_PREFIX "tizen.system.event" enum alias_appid_mode { ALIAS_APPID_MODE_UNKNOWN, @@ -378,6 +379,16 @@ int event_remove_event_handler(event_handler_h event_handler) return EVENT_ERROR_NONE; } +static bool __is_system_event(const char *event_name) +{ + int len = strlen(SYS_EVENT_NAME_PREFIX); + + if (strncmp(event_name, SYS_EVENT_NAME_PREFIX, len) != 0) + return false; + + return true; +} + int event_publish_app_event(const char *event_name, bundle *event_data) { char *real_event_name; @@ -386,6 +397,14 @@ int event_publish_app_event(const char *event_name, bundle *event_data) if (event_data == NULL || event_name == NULL) return __event_error(EVENT_ERROR_INVALID_PARAMETER, __FUNCTION__, NULL); + if (__is_system_event(event_name)) { + ret = eventsystem_send_system_event(event_name, event_data); + if (ret < 0) + return __event_error(EVENT_ERROR_IO_ERROR, __FUNCTION__, NULL); + + return EVENT_ERROR_NONE; + } + ret = __get_publication_alias_appid_mode(); if (ret == ALIAS_APPID_MODE_ON