From: Youngjae Cho Date: Fri, 6 Jan 2023 03:04:34 +0000 (+0900) Subject: resource-manager: introduce sync getter X-Git-Tag: accepted/tizen/unified/20230209.111304~4 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=ad9493c0b5ae29ebaf483c97e54f3e37f2927152;p=platform%2Fcore%2Fsystem%2Flibsyscommon.git resource-manager: introduce sync getter Sync getter fetches data after update. Change-Id: I4610f99f1b4039b985890f77abb827a1174bf5dd Signed-off-by: Youngjae Cho --- diff --git a/src/resource-manager/resource-manager.c b/src/resource-manager/resource-manager.c index fca7743..36ec43f 100644 --- a/src/resource-manager/resource-manager.c +++ b/src/resource-manager/resource-manager.c @@ -792,6 +792,18 @@ syscommon_resman_get_resource_attr_int(int resource_id, u_int64_t attr_id, int32 return 0; } +int +syscommon_resman_get_resource_attr_int_sync(int resource_id, u_int64_t attr_id, int32_t *data) +{ + int ret; + + ret = update_resource_attr(find_resource(resource_id), attr_id); + if (ret != 0) + return ret; + + return syscommon_resman_get_resource_attr_int(resource_id, attr_id, data); +} + int syscommon_resman_get_resource_attr_int64(int resource_id, u_int64_t attr_id, int64_t *data) { @@ -810,6 +822,18 @@ syscommon_resman_get_resource_attr_int64(int resource_id, u_int64_t attr_id, int return 0; } +int +syscommon_resman_get_resource_attr_int64_sync(int resource_id, u_int64_t attr_id, int64_t *data) +{ + int ret; + + ret = update_resource_attr(find_resource(resource_id), attr_id); + if (ret != 0) + return ret; + + return syscommon_resman_get_resource_attr_int64(resource_id, attr_id, data); +} + int syscommon_resman_get_resource_attr_uint(int resource_id, u_int64_t attr_id, u_int32_t *data) { @@ -828,6 +852,18 @@ syscommon_resman_get_resource_attr_uint(int resource_id, u_int64_t attr_id, u_in return 0; } +int +syscommon_resman_get_resource_attr_uint_sync(int resource_id, u_int64_t attr_id, u_int32_t *data) +{ + int ret; + + ret = update_resource_attr(find_resource(resource_id), attr_id); + if (ret != 0) + return ret; + + return syscommon_resman_get_resource_attr_uint(resource_id, attr_id, data); +} + int syscommon_resman_get_resource_attr_uint64(int resource_id, u_int64_t attr_id, u_int64_t *data) { @@ -846,6 +882,18 @@ syscommon_resman_get_resource_attr_uint64(int resource_id, u_int64_t attr_id, u_ return 0; } +int +syscommon_resman_get_resource_attr_uint64_sync(int resource_id, u_int64_t attr_id, u_int64_t *data) +{ + int ret; + + ret = update_resource_attr(find_resource(resource_id), attr_id); + if (ret != 0) + return ret; + + return syscommon_resman_get_resource_attr_uint64(resource_id, attr_id, data); +} + int syscommon_resman_get_resource_attr_double(int resource_id, u_int64_t attr_id, double *data) { @@ -864,6 +912,18 @@ syscommon_resman_get_resource_attr_double(int resource_id, u_int64_t attr_id, do return 0; } +int +syscommon_resman_get_resource_attr_double_sync(int resource_id, u_int64_t attr_id, double *data) +{ + int ret; + + ret = update_resource_attr(find_resource(resource_id), attr_id); + if (ret != 0) + return ret; + + return syscommon_resman_get_resource_attr_double(resource_id, attr_id, data); +} + int syscommon_resman_get_resource_attr_string(int resource_id, u_int64_t attr_id, char *data) { @@ -882,6 +942,18 @@ syscommon_resman_get_resource_attr_string(int resource_id, u_int64_t attr_id, ch return 0; } +int +syscommon_resman_get_resource_attr_string_sync(int resource_id, u_int64_t attr_id, char *data) +{ + int ret; + + ret = update_resource_attr(find_resource(resource_id), attr_id); + if (ret != 0) + return ret; + + return syscommon_resman_get_resource_attr_string(resource_id, attr_id, data); +} + int syscommon_resman_get_resource_attr_array(int resource_id, u_int64_t attr_id, struct syscommon_resman_array_value **data) { @@ -900,6 +972,18 @@ syscommon_resman_get_resource_attr_array(int resource_id, u_int64_t attr_id, str return 0; } +int +syscommon_resman_get_resource_attr_array_sync(int resource_id, u_int64_t attr_id, struct syscommon_resman_array_value **data) +{ + int ret; + + ret = update_resource_attr(find_resource(resource_id), attr_id); + if (ret != 0) + return ret; + + return syscommon_resman_get_resource_attr_array(resource_id, attr_id, data); +} + int syscommon_resman_get_resource_attr_ptr(int resource_id, u_int64_t attr_id, void **data) { @@ -918,6 +1002,18 @@ syscommon_resman_get_resource_attr_ptr(int resource_id, u_int64_t attr_id, void return 0; } +int +syscommon_resman_get_resource_attr_ptr_sync(int resource_id, u_int64_t attr_id, void **data) +{ + int ret; + + ret = update_resource_attr(find_resource(resource_id), attr_id); + if (ret != 0) + return ret; + + return syscommon_resman_get_resource_attr_ptr(resource_id, attr_id, data); +} + static inline bool is_resource_attr_visible(struct syscommon_resman_resource *resource, const struct syscommon_resman_resource_attribute *attr) diff --git a/src/resource-manager/resource-manager.h b/src/resource-manager/resource-manager.h index 4ebf694..e838b8b 100644 --- a/src/resource-manager/resource-manager.h +++ b/src/resource-manager/resource-manager.h @@ -148,13 +148,21 @@ int syscommon_resman_get_resource_attr_json(int resource_id, u_int64_t attr_id, int syscommon_resman_get_resource_list_json(char **json_string); int syscommon_resman_get_resource_attr_int(int resource_id, u_int64_t attr_id, int32_t *data); +int syscommon_resman_get_resource_attr_int_sync(int resource_id, u_int64_t attr_id, int32_t *data); int syscommon_resman_get_resource_attr_int64(int resource_id, u_int64_t attr_id, int64_t *data); +int syscommon_resman_get_resource_attr_int64_sync(int resource_id, u_int64_t attr_id, int64_t *data); int syscommon_resman_get_resource_attr_uint(int resource_id, u_int64_t attr_id, u_int32_t *data); +int syscommon_resman_get_resource_attr_uint_sync(int resource_id, u_int64_t attr_id, u_int32_t *data); int syscommon_resman_get_resource_attr_uint64(int resource_id, u_int64_t attr_id, u_int64_t *data); +int syscommon_resman_get_resource_attr_uint64_sync(int resource_id, u_int64_t attr_id, u_int64_t *data); int syscommon_resman_get_resource_attr_double(int resource_id, u_int64_t attr_id, double *data); +int syscommon_resman_get_resource_attr_double_sync(int resource_id, u_int64_t attr_id, double *data); int syscommon_resman_get_resource_attr_string(int resource_id, u_int64_t attr_id, char *data); +int syscommon_resman_get_resource_attr_string_sync(int resource_id, u_int64_t attr_id, char *data); int syscommon_resman_get_resource_attr_array(int resource_id, u_int64_t attr_id, struct syscommon_resman_array_value **data); +int syscommon_resman_get_resource_attr_array_sync(int resource_id, u_int64_t attr_id, struct syscommon_resman_array_value **data); int syscommon_resman_get_resource_attr_ptr(int resource_id, u_int64_t attr_id, void **data); +int syscommon_resman_get_resource_attr_ptr_sync(int resource_id, u_int64_t attr_id, void **data); int syscommon_resman_set_resource_attr_interest(int resource_id, u_int64_t interest_mask); int syscommon_resman_unset_resource_attr_interest(int resource_id, u_int64_t interest_mask);