glib-2.0
gio-2.0
ua-api
+ capi-system-info
)
IF (${SUSPEND_RESUME_TEST})
pkg_check_modules (PKGS REQUIRED ${PKG_MODULES}
#ifndef __TIZEN_CAPI_NETWORK_USER_AWARENESS_PRIVATE_H__
#define __TIZEN_CAPI_NETWORK_USER_AWARENESS_PRIVATE_H__
-#include <user-awareness-log.h>
+
#include <glib.h>
+#include <user-awareness-log.h>
+#include <user-awareness.h>
+
+#include <system_info.h>
#ifdef __cplusplus
extern "C" {
} \
} \
+typedef enum {
+ UA_FEATURE_BASE = 0,
+ UA_FEATURE_COMMON = UA_FEATURE_BASE,
+ UA_FEATURE_MAX
+} ua_feature_t;
+
+typedef struct {
+ const char *name;
+ gboolean is_check;
+ gboolean value;
+} ua_feature_table_t;
+
+int _ua_check_supported_feature(ua_feature_t feature, bool *supported);
+
+#define UA_CHECK_SUPPORTED_FEATURE(feature) \
+do { \
+ bool is_supported = false; \
+ if (!_ua_check_supported_feature(feature, &is_supported)) { \
+ if (is_supported == false) { \
+ UA_ERR("[%s] NOT_SUPPORTED", __FUNCTION__); \
+ return UA_ERROR_NOT_SUPPORTED; \
+ } \
+ } else { \
+ UA_ERR("[%s] Fail to get the system feature: [%d]", __FUNCTION__, feature); \
+ } \
+} while (0)
+
+
#define UA_ALL_SENSOR_PRESENCE_DETECTION_WAIT_TIME 65 /**< All sensor presence detection wait time */
/**
BuildRequires: pkgconfig(dlog)
BuildRequires: pkgconfig(glib-2.0)
BuildRequires: pkgconfig(ua-api)
+BuildRequires: pkgconfig(capi-system-info)
%if 0%{?ptest:1}
BuildRequires: pkgconfig(deviced)
FUNC_ENTRY;
ua_dev_info_s *device = NULL;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(device_handle);
UA_VALIDATE_INPUT_PARAMETER(mac_address);
{
FUNC_ENTRY;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(device_handle);
{
FUNC_ENTRY;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(handle);
{
FUNC_ENTRY;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(handle);
{
FUNC_ENTRY;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(handle);
UA_VALIDATE_INPUT_PARAMETER(bssid);
{
FUNC_ENTRY;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(handle);
UA_VALIDATE_INPUT_PARAMETER(ipv4_address);
{
FUNC_ENTRY;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(device_handle);
UA_VALIDATE_INPUT_PARAMETER(mac_address);
{
FUNC_ENTRY;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(device_handle);
UA_VALIDATE_INPUT_PARAMETER(os_info);
{
FUNC_ENTRY;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(device_handle);
UA_PRINT_DEVICE_HANDLE(device_handle);
{
FUNC_ENTRY;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(device_handle);
UA_VALIDATE_INPUT_PARAMETER(bssid);
{
FUNC_ENTRY;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(device_handle);
UA_VALIDATE_INPUT_PARAMETER(ipv4_address);
{
FUNC_ENTRY;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(device_handle);
UA_VALIDATE_INPUT_PARAMETER(timestamp);
ua_dev_info_s *dev;
uam_device_info_s uam_dev;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(mac);
UA_VALIDATE_INPUT_PARAMETER(device_handle);
uam_device_info_s uam_dev;
uam_tech_type_e type;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_VALIDATE_INPUT_PARAMETER(device_id);
UA_VALIDATE_INPUT_PARAMETER(device_handle);
retv_if(UA_MAC_TYPE_NONE >= mac_type, UA_ERROR_INVALID_PARAMETER);
gboolean is_registered = false;
uam_device_info_s uam_device;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(device_handle);
UA_VALIDATE_HANDLE(device_handle, ua_devices_list);
gboolean is_registered = FALSE;
uam_device_info_s uam_device;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(handle);
UA_VALIDATE_INPUT_PARAMETER(pairing_required);
FUNC_ENTRY;
int ret;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
+
retv_if(TRUE == is_initialized, UA_ERROR_ALREADY_DONE);
ret = _ua_get_error_code(_uam_init(__ua_event_handler, NULL));
FUNC_ENTRY;
int ret;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
__ua_cleanup();
int ret;
unsigned int bitmask;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(available);
ua_monitor_s *monitor = NULL;
unsigned int available_sensors = 0;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(handle);
ua_monitor_s *monitor = (ua_monitor_s *)handle;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(handle);
UA_VALIDATE_HANDLE(handle, ua_monitor_list);
FUNC_ENTRY;
ua_monitor_s *monitor = (ua_monitor_s *)handle;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(callback);
UA_VALIDATE_INPUT_PARAMETER(handle);
FUNC_ENTRY;
ua_monitor_s *monitor = (ua_monitor_s *)handle;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(handle);
UA_VALIDATE_HANDLE(handle, ua_monitor_list);
unsigned int bitmask;
unsigned int available_sensors = 0;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(handle);
UA_VALIDATE_HANDLE(handle, ua_monitor_list);
ua_monitor_s *monitor = (ua_monitor_s *)handle;
unsigned int bitmask;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(handle);
UA_VALIDATE_HANDLE(handle, ua_monitor_list);
unsigned int bitmask;
int sensor;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(handle);
UA_VALIDATE_INPUT_PARAMETER(foreach_cb);
int ret;
ua_monitor_s *monitor = (ua_monitor_s *)handle;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(handle);
UA_VALIDATE_HANDLE(handle, ua_monitor_list);
int ret;
ua_monitor_s *monitor = (ua_monitor_s *)handle;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(handle);
UA_VALIDATE_HANDLE(handle, ua_monitor_list);
GSList *ua_services_list = _ua_service_get_services();
unsigned int available_sensors = 0;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(handle);
UA_VALIDATE_HANDLE(handle, ua_monitor_list);
GSList *ua_services_list = _ua_service_get_services();
unsigned int available_sensors = 0;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(handle);
UA_VALIDATE_HANDLE(handle, ua_monitor_list);
ua_detection_type_e detect = UA_PRESENCE_DETECTION;
unsigned int available_sensors = 0;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(handle);
UA_VALIDATE_HANDLE(handle, ua_monitor_list);
ua_detection_type_e detect = UA_ABSENCE_DETECTION;
unsigned int available_sensors = 0;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(handle);
UA_VALIDATE_HANDLE(handle, ua_monitor_list);
FUNC_ENTRY;
ua_service_info_s *service = NULL;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(service_handle);
UA_VALIDATE_INPUT_PARAMETER(name);
{
FUNC_ENTRY;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(service_handle);
UA_VALIDATE_HANDLE(service_handle, ua_services_list);
uam_service_info_s uam_service;
ua_service_info_s *service = (ua_service_info_s *)service_handle;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(service_handle);
UA_VALIDATE_HANDLE(service_handle, ua_services_list);
uam_service_info_s uam_service;
ua_service_info_s *service = (ua_service_info_s *)service_handle;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(service_handle);
UA_VALIDATE_HANDLE(service_handle, ua_services_list);
uam_service_info_s uam_service;
ua_service_info_s *service = (ua_service_info_s *)service_handle;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(service_handle);
UA_VALIDATE_HANDLE(service_handle, ua_services_list);
ua_service_info_s *service = (ua_service_info_s *)service_handle;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(service_handle);
UA_VALIDATE_HANDLE(service_handle, ua_services_list);
ua_service_info_s *service = (ua_service_info_s *)service_handle;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(name);
UA_VALIDATE_INPUT_PARAMETER(service_handle);
ua_service_info_s *service = (ua_service_info_s *)service_handle;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(service_handle);
UA_VALIDATE_HANDLE(service_handle, ua_services_list);
ua_service_info_s *h_service = NULL;
GSList *l;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(service_handle);
GSList *l;
ua_service_info_s *s;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(name);
UA_VALIDATE_INPUT_PARAMETER(service_handle);
ua_service_info_s* service_info = (ua_service_info_s *)service_handle;
ua_user_info_s* user_info = (ua_user_info_s*)user_handle;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(service_handle);
UA_VALIDATE_INPUT_PARAMETER(user_handle);
ua_service_info_s* service_info = (ua_service_info_s*)service_handle;
ua_user_info_s* user_info = (ua_user_info_s*)user_handle;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(service_handle);
UA_VALIDATE_INPUT_PARAMETER(user_handle);
ua_service_info_s* service_info = (ua_service_info_s*)service_handle;
ua_dev_info_s* dev_info = (ua_dev_info_s*)device_handle;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(service_handle);
UA_VALIDATE_INPUT_PARAMETER(device_handle);
ua_service_info_s* service_info = (ua_service_info_s*)service_handle;
ua_dev_info_s* dev_info = (ua_dev_info_s*)device_handle;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(service_handle);
UA_VALIDATE_INPUT_PARAMETER(device_handle);
GSList *l;
ua_service_info_s *s;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(foreach_cb);
uam_user_info_s *ptr;
ua_service_info_s *service = (ua_service_info_s *)service_handle;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(foreach_cb);
UA_VALIDATE_INPUT_PARAMETER(service_handle);
{
FUNC_ENTRY;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(service_handle);
UA_VALIDATE_INPUT_PARAMETER(account);
FUNC_ENTRY;
ua_user_info_s *user = NULL;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(user_handle);
UA_VALIDATE_INPUT_PARAMETER(account);
uam_user_info_s uam_user;
ua_user_info_s *user = (ua_user_info_s *)user_handle;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(user_handle);
char account[UAM_USER_ACCOUNT_MAX_STRING_LEN];
ua_user_info_s *user = (ua_user_info_s *)user_handle;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(user_handle);
ua_user_info_s *user = (ua_user_info_s *)user_handle;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(user_handle);
UA_VALIDATE_INPUT_PARAMETER(account);
ua_user_info_s *user = (ua_user_info_s *)user_handle;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(user_handle);
UA_VALIDATE_HANDLE(user_handle, ua_users_list);
uam_device_info_s uam_device;
ua_dev_info_s *device = (ua_dev_info_s *) device_handle;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(device_handle);
uam_device_info_s uam_device;
ua_dev_info_s *device = (ua_dev_info_s *) device_handle;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(device_handle);
FUNC_ENTRY;
int ret;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(foreach_cb);
UA_VALIDATE_INPUT_PARAMETER(user_handle);
static GSList *ua_sensors_list = NULL; /* ua_sensor_info_s */
+static ua_feature_table_t feature_table[] = {
+ {"tizen.org/feature/network.user_awareness", FALSE, FALSE}, /* UA_FEATURE_COMMON */
+};
+
+int _ua_check_supported_feature(ua_feature_t feature, bool *supported)
+{
+ int ret;
+
+ if (feature < UA_FEATURE_BASE || feature >= UA_FEATURE_MAX) {
+ UA_ERR("Invalid parameter. feature [%d]", feature);
+ return UA_ERROR_INVALID_PARAMETER;
+ }
+
+ if (TRUE == feature_table[feature].is_check) {
+ *supported = feature_table[feature].value;
+ return UA_ERROR_NONE;
+ }
+
+ ret = system_info_get_platform_bool(feature_table[feature].name, supported);
+ if (SYSTEM_INFO_ERROR_NONE != ret) {
+ UA_ERR("fail to get %s", feature_table[feature].name);
+ return UA_ERROR_OPERATION_FAILED;
+ }
+
+ feature_table[feature].is_check = TRUE;
+ feature_table[feature].value = *supported;
+
+ return UA_ERROR_NONE;
+}
+
ua_mac_type_e _to_ua_mac_type(uam_tech_type_e tech_type)
{
switch (tech_type) {
FUNC_ENTRY;
ua_sensor_info_s *sensor;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(sensor_handle);
UA_INFO("Sensor Handle [%p]", sensor_handle);
FUNC_ENTRY;
ua_sensor_info_s *sensor;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(sensor_handle);
UA_INFO("Sensor Handle [%p]", sensor_handle);
FUNC_ENTRY;
ua_sensor_info_s *sensor;
+ UA_CHECK_SUPPORTED_FEATURE(UA_FEATURE_COMMON);
UA_CHECK_INIT_STATUS();
UA_VALIDATE_INPUT_PARAMETER(sensor_handle);
UA_INFO("Sensor Handle [%p]", sensor_handle);