return 0;
}
+static bool is_valid_resource(struct syscommon_resman_resource *resource, int instance_type)
+{
+ return (resource && resource->instance_type == instance_type);
+}
+
int
syscommon_resman_monitor_update_resource_attrs(int resource_id)
{
int i, ret;
struct syscommon_resman_resource *resource = find_resource(resource_id);
- if (!resource || !resource->resource_type)
+ if (!is_valid_resource(resource, INSTANCE_TYPE_MONITOR))
return -EINVAL;
if (resource->driver && resource->driver->ops.prepare_update) {
{
struct syscommon_resman_resource *resource = find_resource(resource_id);
- if (!resource || resource->instance_type != INSTANCE_TYPE_NORMAL)
+ if (!is_valid_resource(resource, INSTANCE_TYPE_NORMAL))
return -EINVAL;
return is_resource_attr_supported(resource, attr_id, supported);
{
struct syscommon_resman_resource *resource = find_resource(resource_id);
+ if (!is_valid_resource(resource, INSTANCE_TYPE_MONITOR))
+ return -EINVAL;
+
return is_resource_attr_supported(resource, attr_id, supported);
}
struct syscommon_resman_resource *resource = find_resource(resource_id);
int i;
- if (!resource || !resource->resource_type)
+ if (!is_valid_resource(resource, INSTANCE_TYPE_MONITOR))
return -EINVAL;
jobj_root = json_object_new_object();
json_object *jobj_attr;
struct syscommon_resman_resource *resource = find_resource(resource_id);
+ if (!is_valid_resource(resource, INSTANCE_TYPE_MONITOR))
+ return -EINVAL;
+
attr = get_resource_attr(resource, attr_id);
attr_value = get_resource_attr_value(resource, attr_id);
}
static int
-get_resource_attr_value_data(int resource_id, u_int64_t attr_id, enum syscommon_resman_data_type type, void *data)
+get_resource_attr_value_data(struct syscommon_resman_resource *resource, u_int64_t attr_id, enum syscommon_resman_data_type type, void *data)
{
struct syscommon_resman_resource_attribute_value *attr_value = NULL;
- struct syscommon_resman_resource *resource = find_resource(resource_id);
if (!check_attr_validate(resource, attr_id, type))
return -EINVAL;
int
syscommon_resman_monitor_get_resource_attr_int(int resource_id, u_int64_t attr_id, int32_t *data)
{
- return get_resource_attr_value_data(resource_id, attr_id, SYSCOMMON_RESMAN_DATA_TYPE_INT, data);
+ struct syscommon_resman_resource *resource = find_resource(resource_id);
+
+ if (!is_valid_resource(resource, INSTANCE_TYPE_MONITOR))
+ return -EINVAL;
+
+ return get_resource_attr_value_data(resource, attr_id, SYSCOMMON_RESMAN_DATA_TYPE_INT, data);
}
int
syscommon_resman_monitor_get_resource_attr_int64(int resource_id, u_int64_t attr_id, int64_t *data)
{
- return get_resource_attr_value_data(resource_id, attr_id, SYSCOMMON_RESMAN_DATA_TYPE_INT64, data);
+ struct syscommon_resman_resource *resource = find_resource(resource_id);
+
+ if (!is_valid_resource(resource, INSTANCE_TYPE_MONITOR))
+ return -EINVAL;
+
+ return get_resource_attr_value_data(resource, attr_id, SYSCOMMON_RESMAN_DATA_TYPE_INT64, data);
}
int
syscommon_resman_monitor_get_resource_attr_uint(int resource_id, u_int64_t attr_id, u_int32_t *data)
{
- return get_resource_attr_value_data(resource_id, attr_id, SYSCOMMON_RESMAN_DATA_TYPE_UINT, data);
+ struct syscommon_resman_resource *resource = find_resource(resource_id);
+
+ if (!is_valid_resource(resource, INSTANCE_TYPE_MONITOR))
+ return -EINVAL;
+
+ return get_resource_attr_value_data(resource, attr_id, SYSCOMMON_RESMAN_DATA_TYPE_UINT, data);
}
int
syscommon_resman_monitor_get_resource_attr_uint64(int resource_id, u_int64_t attr_id, u_int64_t *data)
{
- return get_resource_attr_value_data(resource_id, attr_id, SYSCOMMON_RESMAN_DATA_TYPE_UINT64, data);
+ struct syscommon_resman_resource *resource = find_resource(resource_id);
+
+ if (!is_valid_resource(resource, INSTANCE_TYPE_MONITOR))
+ return -EINVAL;
+
+ return get_resource_attr_value_data(resource, attr_id, SYSCOMMON_RESMAN_DATA_TYPE_UINT64, data);
}
int
syscommon_resman_monitor_get_resource_attr_double(int resource_id, u_int64_t attr_id, double *data)
{
- return get_resource_attr_value_data(resource_id, attr_id, SYSCOMMON_RESMAN_DATA_TYPE_DOUBLE, data);
+ struct syscommon_resman_resource *resource = find_resource(resource_id);
+
+ if (!is_valid_resource(resource, INSTANCE_TYPE_MONITOR))
+ return -EINVAL;
+
+ return get_resource_attr_value_data(resource, attr_id, SYSCOMMON_RESMAN_DATA_TYPE_DOUBLE, data);
}
int
syscommon_resman_monitor_get_resource_attr_string(int resource_id, u_int64_t attr_id, char *data)
{
- return get_resource_attr_value_data(resource_id, attr_id, SYSCOMMON_RESMAN_DATA_TYPE_STRING, data);
+ struct syscommon_resman_resource *resource = find_resource(resource_id);
+
+ if (!is_valid_resource(resource, INSTANCE_TYPE_MONITOR))
+ return -EINVAL;
+
+ return get_resource_attr_value_data(resource, attr_id, SYSCOMMON_RESMAN_DATA_TYPE_STRING, data);
}
int
syscommon_resman_monitor_get_resource_attr_array(int resource_id, u_int64_t attr_id, struct syscommon_resman_array_value **data)
{
- return get_resource_attr_value_data(resource_id, attr_id, SYSCOMMON_RESMAN_DATA_TYPE_ARRAY, data);
+ struct syscommon_resman_resource *resource = find_resource(resource_id);
+
+ if (!is_valid_resource(resource, INSTANCE_TYPE_MONITOR))
+ return -EINVAL;
+
+ return get_resource_attr_value_data(resource, attr_id, SYSCOMMON_RESMAN_DATA_TYPE_ARRAY, data);
}
int
syscommon_resman_monitor_get_resource_attr_ptr(int resource_id, u_int64_t attr_id, void **data)
{
- return get_resource_attr_value_data(resource_id, attr_id, SYSCOMMON_RESMAN_DATA_TYPE_PTR, data);
+ struct syscommon_resman_resource *resource = find_resource(resource_id);
+
+ if (!is_valid_resource(resource, INSTANCE_TYPE_MONITOR))
+ return -EINVAL;
+
+ return get_resource_attr_value_data(resource, attr_id, SYSCOMMON_RESMAN_DATA_TYPE_PTR, data);
}
static inline bool