From 86605b23a9041f98bcb91cf1fb8d4d0fceda7e36 Mon Sep 17 00:00:00 2001 From: Lokesh Date: Wed, 4 Dec 2019 14:19:57 +0530 Subject: [PATCH] Revert "Add DB functionality for device users mapping" This reverts commit 1afd2d3aeb9758f4f894c3aa917874da82d33c3b. Change-Id: I5a76569e7190643c7dfc726dbdeca01d1cb27723 --- packaging/ua-manager.spec | 2 +- ua-daemon/CMakeLists.txt | 1 - ua-daemon/data/ua_db.sql | 8 - ua-daemon/include/ua-manager-database.h | 39 -- ua-daemon/src/ua-manager-db.c | 16 - ua-daemon/src/ua-manager-device-user-db.c | 622 ------------------------------ ua-daemon/src/ua-manager-user-db.c | 37 -- 7 files changed, 1 insertion(+), 724 deletions(-) delete mode 100644 ua-daemon/src/ua-manager-device-user-db.c diff --git a/packaging/ua-manager.spec b/packaging/ua-manager.spec index d24c7ac..81f2fe6 100644 --- a/packaging/ua-manager.spec +++ b/packaging/ua-manager.spec @@ -1,6 +1,6 @@ Name: ua-manager Summary: User awareness manager -Version: 0.13.10 +Version: 0.13.11 Release: 1 License: Apache-2.0 Source0: %{name}-%{version}.tar.gz diff --git a/ua-daemon/CMakeLists.txt b/ua-daemon/CMakeLists.txt index af143cf..51878cc 100644 --- a/ua-daemon/CMakeLists.txt +++ b/ua-daemon/CMakeLists.txt @@ -15,7 +15,6 @@ SET(SRCS src/ua-manager-user-db.c src/ua-manager-service-db.c src/ua-manager-device-service-db.c - src/ua-manager-device-user-db.c src/ua-manager-adv-db.c src/pm/ua-plugin-manager.c src/pm/ua-pm-util.c diff --git a/ua-daemon/data/ua_db.sql b/ua-daemon/data/ua_db.sql index 033d79a..d5bf3ba 100644 --- a/ua-daemon/data/ua_db.sql +++ b/ua-daemon/data/ua_db.sql @@ -63,14 +63,6 @@ CREATE TABLE IF NOT EXISTS device_services ( PRIMARY KEY(device_number, service_number) ); -CREATE TABLE IF NOT EXISTS device_user ( - device_number INTEGER, - user_id INTEGER, - FOREIGN KEY(device_number) REFERENCES devices(device_number), - FOREIGN KEY(user_id) REFERENCES userdata(user_id), - PRIMARY KEY(device_number, user_id) -); - CREATE TABLE IF NOT EXISTS ibeacon_adv ( ibeacon_id INTEGER PRIMARY KEY AUTOINCREMENT, ibeacon_adv TEXT, diff --git a/ua-daemon/include/ua-manager-database.h b/ua-daemon/include/ua-manager-database.h index 1b9bea3..9f1d6ac 100644 --- a/ua-daemon/include/ua-manager-database.h +++ b/ua-daemon/include/ua-manager-database.h @@ -93,7 +93,6 @@ int _uam_user_db_deinitialize(void); /* select operations */ GSList *_uam_db_get_all_users(void); int _uam_db_get_user(int user_id, db_user_info_t *info); -int _uam_db_get_user_id(const char *account, int *user_id); /* delete operations */ int _uam_db_delete_by_user_id(int user_id); @@ -222,44 +221,6 @@ int _uam_db_update_device_service_last_seen(const char *device_id, int tech_type, const char *address, const char *service_name, unsigned long long last_seen); - -/* DEVICE_USER QUERIES */ - -typedef struct { - char device_id[UAM_DEVICE_ID_MAX_STRING_LEN]; - uam_tech_type_e type; - char account[UAM_USER_ACCOUNT_MAX_STRING_LEN]; -} db_dev_user_info_t; - -/* db init/deinit */ -int _uam_device_user_db_initialize(void); -int _uam_device_user_db_deinitialize(void); - -/* select operations */ -GSList *_uam_db_get_user_list_for_device(int device_number); -GSList *_uam_db_get_user_list_for_device_info(const char *device_id, - int tech_type, const char *address); -int _uam_db_get_device_user_count(const char *device_id, int tech_type, - const char *address, int *user_count); -GSList *_uam_db_get_device_user_info(); - -/* delete operations */ -int _uam_device_user_db_clear(void); -int _uam_db_delete_device_for_user_id(int user_id); -int _uam_db_delete_device_user_id(int device_number, int user_id); -int _uam_db_delete_for_device_number(int device_number); -int _uam_db_delete_device_for_user_info(const char *account); -int _uam_db_delete_device_user_info(const char *device_id, int tech_type, - const char *address, const char *account); -int _uam_db_delete_for_device_info(const char *device_id, int tech_type, - const char *address); - -/* insert */ -int _uam_db_insert_device_user(int device_number, int user_id); -int _uam_db_insert_device_user_info(const char *device_id, int tech_type, - const char *address, const char *account); - - /* IBEACON_ADV QUERIES */ typedef struct { diff --git a/ua-daemon/src/ua-manager-db.c b/ua-daemon/src/ua-manager-db.c index c226bfa..4f709da 100644 --- a/ua-daemon/src/ua-manager-db.c +++ b/ua-daemon/src/ua-manager-db.c @@ -29,7 +29,6 @@ #define UAM_DB_DEVICES_TABLE "devices" /**< Device DB table name */ #define UAM_DB_SERVICES_TABLE "services" /**< Service DB table name */ #define UAM_DB_DEVICE_SERVICES_TABLE "device_services" /**< Device services DB table name */ -#define UAM_DB_DEVICE_USER_TABLE "device_users" /**< Device user DB table name */ #define UAM_DB_IBEACON_ADV_TABLE "ibeacon_adv" /**< iBeacon adv DB table name */ #define CREATE_USERDATA_TABLE "CREATE TABLE IF NOT EXISTS userdata ( " \ @@ -77,14 +76,6 @@ "PRIMARY KEY(device_number, service_number) " \ "); " -#define CREATE_DEVICE_USER_TABLE "CREATE TABLE IF NOT EXISTS device_users ( " \ - "device_number INTEGER, " \ - "user_id INTEGER, " \ - "FOREIGN KEY(device_number) REFERENCES devices(device_number), " \ - "FOREIGN KEY(user_id) REFERENCES userdata(user_id), " \ - "PRIMARY KEY(device_number, user_id) " \ - "); " - #define CREATE_IBEACON_ADV_TABLE "CREATE TABLE IF NOT EXISTS ibeacon_adv ( " \ "ibeacon_id INTEGER PRIMARY KEY AUTOINCREMENT, " \ "ibeacon_adv TEXT, " \ @@ -404,10 +395,6 @@ static int __uam_db_check_table_creation(void) if (!__uam_db_is_table_existing(UAM_DB_DEVICE_SERVICES_TABLE)) retv_if(UAM_ERROR_NONE != __uam_db_create_table(CREATE_DEVICE_SERVICES_TABLE), error_code); - if (!__uam_db_is_table_existing(UAM_DB_DEVICE_USER_TABLE)) - retv_if(UAM_ERROR_NONE != - __uam_db_create_table(CREATE_DEVICE_USER_TABLE), error_code); - if (!__uam_db_is_table_existing(UAM_DB_IBEACON_ADV_TABLE)) retv_if(UAM_ERROR_NONE != __uam_db_create_table(CREATE_IBEACON_ADV_TABLE), error_code); @@ -496,7 +483,6 @@ int _uam_db_initialize(void) EXEC(UAM_ERROR_NONE, _uam_device_db_initialize(), handle_error); EXEC(UAM_ERROR_NONE, _uam_service_db_initialize(), handle_error); EXEC(UAM_ERROR_NONE, _uam_device_service_db_initialize(), handle_error); - EXEC(UAM_ERROR_NONE, _uam_device_user_db_initialize(), handle_error); EXEC(UAM_ERROR_NONE, _uam_adv_db_initialize(), handle_error); transaction_cnt = 0; @@ -519,7 +505,6 @@ int _uam_db_deinitialize(void) _uam_device_db_deinitialize(); _uam_service_db_deinitialize(); _uam_device_service_db_deinitialize(); - _uam_device_user_db_deinitialize(); _uam_adv_db_deinitialize(); FUNC_EXIT; @@ -535,7 +520,6 @@ int _uam_db_clear(void) EXEC(UAM_ERROR_NONE, _uam_device_db_clear(), handle_error); EXEC(UAM_ERROR_NONE, _uam_service_db_clear(), handle_error); EXEC(UAM_ERROR_NONE, _uam_device_service_db_clear(), handle_error); - EXEC(UAM_ERROR_NONE, _uam_device_user_db_clear(), handle_error); EXEC(UAM_ERROR_NONE, _uam_adv_db_clear(), handle_error); UAM_DBG("Table data deleted "); diff --git a/ua-daemon/src/ua-manager-device-user-db.c b/ua-daemon/src/ua-manager-device-user-db.c deleted file mode 100644 index 66823d0..0000000 --- a/ua-daemon/src/ua-manager-device-user-db.c +++ /dev/null @@ -1,622 +0,0 @@ -/* - * Copyright (c) 2018 Samsung Electronics Co., Ltd. All rights reserved. - * - * Licensed under the Apache License, Version 2.0 (the "License") - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - */ - -#include -#include -#include -#include -#include - -#include "ua-manager-common.h" -#include "ua-manager-database.h" - -#define DELETE_DEVICE_USER "delete from device_user " \ - "WHERE device_number = ? and user_id = ?" - -#define DELETE_ALL_DEVICE_USER "delete from device_user " - -#define DELETE_FOR_USER "delete from device_user " \ - "WHERE user_id = ?" - -#define DELETE_FOR_DEVICE "delete from device_user " \ - "WHERE device_number = ?" - -#define SELECT_USER_FOR_DEVICE "SELECT U.user_id, U.account, U.name " \ - "FROM device_user as D JOIN userdata as U USING(user_id) " \ - "where D.device_number = ?" - -#define SELECT_COUNT_FOR_DEVICE "SELECT count(*) " \ - "FROM device_user where device_number = ?" - -#define SELECT_DEVICE_USER "SELECT D.device_id, D.tech_type, U.account " \ - "FROM device_user as P JOIN userdata as U USING(user_id) JOIN devices as D " \ - "USING(device_number)" - -#define INSERT_DEVICE_USER "insert into device_user " \ - "(device_number, user_id) values (?, ?)" - - -/* DELETE statements */ -static sqlite3_stmt *delete_device_user; -static sqlite3_stmt *delete_all_device_user; -static sqlite3_stmt *delete_for_user; -static sqlite3_stmt *delete_for_device; - -/* SELECT statements */ -static sqlite3_stmt *select_user_for_device; -static sqlite3_stmt *select_count_for_device; -static sqlite3_stmt *select_device_user; - -/* INSERT statements */ -static sqlite3_stmt *insert_device_user; - -extern sqlite3 *database_handle; - -static void __uam_device_user_finalize_delete(void) -{ - FUNC_ENTRY; - - FINALIZE(delete_device_user); - FINALIZE(delete_all_device_user); - FINALIZE(delete_for_user); - FINALIZE(delete_for_device); - - FUNC_EXIT; -} - -static void __uam_device_user_finalize_select(void) -{ - FUNC_ENTRY; - - FINALIZE(select_user_for_device); - FINALIZE(select_count_for_device); - FINALIZE(select_device_user); - - FUNC_EXIT; -} - -static void __uam_device_user_finalize_insert(void) -{ - FUNC_ENTRY; - - FINALIZE(insert_device_user); - - FUNC_EXIT; -} - -static int __uam_device_user_prepare_delete(sqlite3 *db) -{ - FUNC_ENTRY; - int rc; - static int initialized; - - if (initialized) { - FUNC_EXIT; - return SQLITE_OK; - } - - PREPARE_QUERY(rc, db, delete_device_user, - DELETE_DEVICE_USER, __uam_device_user_finalize_delete); - PREPARE_QUERY(rc, db, delete_all_device_user, - DELETE_ALL_DEVICE_USER, __uam_device_user_finalize_delete); - PREPARE_QUERY(rc, db, delete_for_user, - DELETE_FOR_USER, __uam_device_user_finalize_delete); - PREPARE_QUERY(rc, db, delete_for_device, - DELETE_FOR_DEVICE, __uam_device_user_finalize_delete); - - initialized = 1; - FUNC_EXIT; - return rc; -} - -static int __uam_device_user_prepare_select(sqlite3 *db) -{ - FUNC_ENTRY; - int rc; - static int initialized; - - if (initialized) { - FUNC_EXIT; - return SQLITE_OK; - } - - PREPARE_QUERY(rc, db, select_user_for_device, - SELECT_USER_FOR_DEVICE, __uam_device_user_finalize_select); - PREPARE_QUERY(rc, db, select_count_for_device, - SELECT_COUNT_FOR_DEVICE, __uam_device_user_finalize_select); - PREPARE_QUERY(rc, db, select_device_user, - SELECT_DEVICE_USER, __uam_device_user_finalize_select); - - initialized = 1; - FUNC_EXIT; - return rc; -} - -static int __uam_device_user_prepare_insert(sqlite3 *db) -{ - FUNC_ENTRY; - int rc; - static int initialized; - - if (initialized) { - FUNC_EXIT; - return SQLITE_OK; - } - - PREPARE_QUERY(rc, db, insert_device_user, - INSERT_DEVICE_USER, __uam_device_user_finalize_insert); - - initialized = 1; - FUNC_EXIT; - return rc; -} - -static int __uam_device_user_table_deviceuserinfo_prepare(sqlite3 *db) -{ - FUNC_ENTRY; - - int error_code = UAM_ERROR_NONE; - - if (db == NULL) { - FUNC_EXIT; - return UAM_ERROR_DB_FAILED; - } - - DB_ACTION(__uam_device_user_prepare_delete(db), error_code, handle_error); - DB_ACTION(__uam_device_user_prepare_select(db), error_code, handle_error); - DB_ACTION(__uam_device_user_prepare_insert(db), error_code, handle_error); - -handle_error: - FUNC_EXIT; - return error_code; -} - -static void __uam_device_user_table_devicesinfo_finalize(void) -{ - FUNC_ENTRY; - __uam_device_user_finalize_delete(); - __uam_device_user_finalize_select(); - __uam_device_user_finalize_insert(); - FUNC_EXIT; -} - -int _uam_device_user_db_deinitialize(void) -{ - FUNC_ENTRY; - - retv_if(NULL == database_handle, UAM_ERROR_NONE); - - __uam_device_user_table_devicesinfo_finalize(); - sqlite3_close(database_handle); - - FUNC_EXIT; - return UAM_ERROR_NONE; -} - -int _uam_device_user_db_initialize(void) -{ - FUNC_ENTRY; - - EXEC(UAM_ERROR_NONE, - __uam_device_user_table_deviceuserinfo_prepare(database_handle), - handle_error); - - FUNC_EXIT; - return UAM_ERROR_NONE; - -handle_error: - _uam_device_user_db_deinitialize(); - FUNC_EXIT; - return UAM_ERROR_DB_FAILED; -} - -int _uam_db_insert_device_user(int device_number, int user_id) -{ - FUNC_ENTRY; - int error_code = UAM_ERROR_NONE; - sqlite3_stmt *stmt = insert_device_user; - int sql_ret = SQLITE_OK; - - UAM_INFO("%d-%d", device_number, user_id); - - DB_ACTION(sqlite3_bind_int(stmt, 1, device_number), error_code, handle_error); - DB_ACTION(sqlite3_bind_int(stmt, 2, user_id), error_code, handle_error); - - sql_ret = sqlite3_step(stmt); - if (sql_ret != SQLITE_DONE) { - UAM_ERR("Failed to insert device-user info [%d:%s]", - sql_ret, sqlite3_errmsg(database_handle)); - error_code = UAM_ERROR_DB_FAILED; - goto handle_error; - } - - UAM_DBG("Device-user info inserted [%d] [%d]", device_number, - user_id); - -handle_error: - sqlite3_reset(stmt); - FUNC_EXIT; - return error_code; -} - -int _uam_db_insert_device_user_info(const char *device_id, int tech_type, - const char *address, const char *account) -{ - FUNC_ENTRY; - int ret = UAM_ERROR_NONE; - int user_id = 0; - - UAM_INFO("%s-%d-%s-%s", device_id, tech_type, address, account); - - int device_number = 0; - ret = _uam_db_get_device_number(device_id, tech_type, address, - &device_number); - if (UAM_ERROR_NONE != ret) - goto handle_error; - - ret = _uam_db_get_user_id(account, &user_id); - if (UAM_ERROR_NONE != ret) - goto handle_error; - - UAM_INFO("%d-%d", device_number, user_id); - - ret = _uam_db_insert_device_user(device_number, user_id); - if (UAM_ERROR_NONE != ret) - goto handle_error; - - UAM_DBG("Device-user info inserted [%d] [%d]", device_number, user_id); - -handle_error: - FUNC_EXIT; - return ret; -} - -int _uam_device_user_db_clear(void) -{ - FUNC_ENTRY; - int error_code = UAM_ERROR_NONE; - sqlite3_stmt *stmt = delete_all_device_user; - int sql_ret = SQLITE_OK; - - sql_ret = sqlite3_step(stmt); - if (sql_ret != SQLITE_DONE) { - UAM_ERR("Failed to delete device data [%d:%s]", - sql_ret, sqlite3_errmsg(database_handle)); - error_code = UAM_ERROR_DB_FAILED; - goto handle_error; - } - - UAM_DBG("All device user data deleted "); - -handle_error: - sqlite3_reset(stmt); - FUNC_EXIT; - return error_code; -} - -int _uam_db_delete_device_for_user_id(int user_id) -{ - FUNC_ENTRY; - int error_code = UAM_ERROR_NONE; - sqlite3_stmt *stmt = delete_for_user; - int sql_ret = SQLITE_OK; - - UAM_INFO("User_id: %d", user_id); - - DB_ACTION(sqlite3_bind_int(stmt, 1, user_id), error_code, handle_error); - - sql_ret = sqlite3_step(stmt); - if (sql_ret != SQLITE_DONE) { - UAM_ERR("Failed to delete device-user info [%d:%s]", - sql_ret, sqlite3_errmsg(database_handle)); - error_code = UAM_ERROR_DB_FAILED; - } else - UAM_DBG("Device-user data for user_id deleted"); - -handle_error: - sqlite3_reset(stmt); - FUNC_EXIT; - return error_code; -} - -int _uam_db_delete_device_user_id(int device_number, int user_id) -{ - FUNC_ENTRY; - int error_code = UAM_ERROR_NONE; - sqlite3_stmt *stmt = delete_device_user; - int sql_ret = SQLITE_OK; - - UAM_INFO("Device Number: %d user_id: %d", device_number, user_id); - - DB_ACTION(sqlite3_bind_int(stmt, 1, device_number), error_code, handle_error); - DB_ACTION(sqlite3_bind_int(stmt, 2, user_id), error_code, handle_error); - - sql_ret = sqlite3_step(stmt); - if (sql_ret != SQLITE_DONE) { - UAM_ERR("Failed to delete device-user info [%d:%s]", - sql_ret, sqlite3_errmsg(database_handle)); - error_code = UAM_ERROR_DB_FAILED; - } else - UAM_DBG("Device-user info deleted"); - -handle_error: - sqlite3_reset(stmt); - FUNC_EXIT; - return error_code; -} - -int _uam_db_delete_for_device_number(int device_number) -{ - FUNC_ENTRY; - int error_code = UAM_ERROR_NONE; - sqlite3_stmt *stmt = delete_for_device; - int sql_ret = SQLITE_OK; - - UAM_INFO("Device Number: %d", device_number); - - DB_ACTION(sqlite3_bind_int(stmt, 1, device_number), error_code, handle_error); - - sql_ret = sqlite3_step(stmt); - if (sql_ret != SQLITE_DONE) { - UAM_ERR("Failed to delete device info [%d:%s]", - sql_ret, sqlite3_errmsg(database_handle)); - error_code = UAM_ERROR_DB_FAILED; - } else - UAM_DBG("Device user info deleted for device_number"); - -handle_error: - sqlite3_reset(stmt); - FUNC_EXIT; - return error_code; -} - -int _uam_db_delete_device_for_user_info(const char *account) -{ - FUNC_ENTRY; - int ret = UAM_ERROR_NONE; - int error_code = UAM_ERROR_NONE; - UAM_INFO("%s", account); - - int user_id = 0; - ret = _uam_db_get_user_id(account, &user_id); - if (UAM_ERROR_NONE != ret) - goto handle_error; - - UAM_INFO("%d", user_id); - - ret = _uam_db_delete_device_for_user_id(user_id); - if (UAM_ERROR_NONE != ret) - goto handle_error; - - UAM_DBG("Device user info deleted for user_id[%d]", user_id); - -handle_error: - FUNC_EXIT; - return error_code; -} - -int _uam_db_delete_device_user_info(const char *device_id, int tech_type, - const char *address, const char *account) -{ - FUNC_ENTRY; - int ret = UAM_ERROR_NONE; - int user_id = 0; - int device_number = 0; - int error_code = UAM_ERROR_NONE; - - UAM_INFO("%s-%d-%s-%s", device_id, tech_type, address, account); - - ret = _uam_db_get_device_number(device_id, tech_type, address, - &device_number); - if (UAM_ERROR_NONE != ret) - goto handle_error; - - ret = _uam_db_get_user_id(account, &user_id); - if (UAM_ERROR_NONE != ret) - goto handle_error; - - UAM_INFO("%d-%d", device_number, user_id); - - ret = _uam_db_delete_device_user_id(device_number, user_id); - if (UAM_ERROR_NONE != ret) - goto handle_error; - - UAM_DBG("Device-user info deleted [%d] [%d]", device_number, user_id); - -handle_error: - FUNC_EXIT; - return error_code; -} - -int _uam_db_delete_for_device_info(const char *device_id, int tech_type, - const char *address) -{ - FUNC_ENTRY; - int ret = UAM_ERROR_NONE; - int device_number = 0; - int error_code = UAM_ERROR_NONE; - - UAM_INFO("%s-%d-%s", device_id, tech_type, address); - - ret = _uam_db_get_device_number(device_id, tech_type, address, - &device_number); - if (UAM_ERROR_NONE != ret) - goto handle_error; - - UAM_INFO("%d", device_number); - - ret = _uam_db_delete_for_device_number(device_number); - if (UAM_ERROR_NONE != ret) - goto handle_error; - - UAM_DBG("Device user info deleted for device_number[%d]", device_number); - -handle_error: - FUNC_EXIT; - return error_code; -} - -GSList *_uam_db_get_user_list_for_device(int device_number) -{ - FUNC_ENTRY; - sqlite3_stmt *stmt = select_user_for_device; - GSList *user_list = NULL; - db_user_info_t *info = NULL; - int sql_ret = SQLITE_OK; - - if (sqlite3_bind_int(stmt, 1, device_number) != SQLITE_OK) - goto handle_error; - - do { - sql_ret = sqlite3_step(stmt); - switch (sql_ret) { - case SQLITE_DONE: - break; - case SQLITE_ROW: - info = g_new0(db_user_info_t, 1); - info->user_id = sqlite3_column_int(stmt, 0); - g_strlcpy(info->account, (char *)sqlite3_column_text(stmt, 1), - UAM_USER_ACCOUNT_MAX_STRING_LEN); - g_strlcpy(info->name, (char *)sqlite3_column_text(stmt, 2), - UAM_USER_NAME_MAX_STRING_LEN); - - UAM_INFO("%d-%s-%s", info->user_id, info->account, info->name); - user_list = g_slist_append(user_list, info); - break; - case SQLITE_ERROR: - default: - UAM_ERR("Failed to enumerate device info [%d:%s]", - sql_ret, sqlite3_errmsg(database_handle)); - } - } while (sql_ret == SQLITE_ROW); - -handle_error: - sqlite3_reset(stmt); - FUNC_EXIT; - return user_list; -} - -GSList *_uam_db_get_user_list_for_device_info(const char *device_id, - int tech_type, const char *address) -{ - FUNC_ENTRY; - int ret = UAM_ERROR_NONE; - int device_number = 0; - GSList *user_list = NULL; - - if (NULL == device_id && NULL == address) { - FUNC_EXIT; - return NULL; - } - - UAM_INFO("%s-%d-%s", device_id, tech_type, address); - - ret = _uam_db_get_device_number(device_id, tech_type, address, - &device_number); - if (UAM_ERROR_NONE != ret) - goto handle_error; - - user_list = _uam_db_get_user_list_for_device(device_number); - -handle_error: - FUNC_EXIT; - return user_list; -} - -int _uam_db_get_device_user_count(const char *device_id, int tech_type, - const char *address, int *user_count) -{ - FUNC_ENTRY; - int error_code = UAM_ERROR_NONE; - sqlite3_stmt *stmt = select_count_for_device; - int device_number = 0; - int sql_ret = SQLITE_OK; - - retv_if(NULL == device_id, UAM_ERROR_INVALID_PARAMETER); - retv_if(NULL == address, UAM_ERROR_INVALID_PARAMETER); - UAM_INFO("%s-%d-%s", device_id, tech_type, address); - - error_code = _uam_db_get_device_number(device_id, tech_type, address, - &device_number); - if (UAM_ERROR_NONE != error_code) - goto handle_error; - - DB_ACTION(sqlite3_bind_int(stmt, 1, device_number), - error_code, handle_error); - - do { - sql_ret = sqlite3_step(stmt); - - switch (sql_ret) { - case SQLITE_DONE: - break; - case SQLITE_ROW: - UAM_DBG("Device user count info found"); - *user_count = sqlite3_column_int(stmt, 0); - UAM_INFO("device user count %d", *user_count); - break; - case SQLITE_ERROR: - default: - UAM_ERR("Failed to enumerate device info [%d:%s]", - sql_ret, sqlite3_errmsg(database_handle)); - } - } while (sql_ret == SQLITE_ROW); - -handle_error: - sqlite3_reset(stmt); - FUNC_EXIT; - return error_code; -} - -GSList *_uam_db_get_device_user_info() -{ - FUNC_ENTRY; - sqlite3_stmt *stmt = select_device_user; - GSList *dev_user_list = NULL; - db_dev_user_info_t *info = NULL; - int sql_ret = SQLITE_OK; - - do { - sql_ret = sqlite3_step(stmt); - - switch (sql_ret) { - case SQLITE_DONE: - break; - case SQLITE_ROW: - UAM_DBG("Device user info found"); - info = g_new0(db_dev_user_info_t, 1); - g_strlcpy(info->device_id, (char *)sqlite3_column_text(stmt, 0), - UAM_DEVICE_ID_MAX_STRING_LEN); - info->type = sqlite3_column_int(stmt, 1); - g_strlcpy(info->account, (char *)sqlite3_column_text(stmt, 2), - UAM_SERVICE_MAX_STRING_LEN); - - UAM_INFO("%s-%d-%s", info->device_id, info->type, info->account); - - dev_user_list = g_slist_append(dev_user_list, info); - break; - case SQLITE_ERROR: - default: - UAM_ERR("Failed to enumerate device info [%d:%s]", - sql_ret, sqlite3_errmsg(database_handle)); - } - } while (sql_ret == SQLITE_ROW); - - sqlite3_reset(stmt); - FUNC_EXIT; - return dev_user_list; -} diff --git a/ua-daemon/src/ua-manager-user-db.c b/ua-daemon/src/ua-manager-user-db.c index 660f962..1773113 100644 --- a/ua-daemon/src/ua-manager-user-db.c +++ b/ua-daemon/src/ua-manager-user-db.c @@ -30,8 +30,6 @@ #define SELECT_USER_DATA "SELECT user_id, name, account FROM userdata WHERE user_id = ?" -#define SELECT_USER_ID "SELECT user_id FROM userdata WHERE account = ?" - #define SELECT_MAX_USER_ID "SELECT MAX(user_id) FROM userdata" #define INSERT_USER_INFO "insert into userdata (name, account) values (?, ?)" @@ -49,7 +47,6 @@ static sqlite3_stmt *delete_user_info; /* SELECT statements */ static sqlite3_stmt *select_all_users_data; static sqlite3_stmt *select_user_data; -static sqlite3_stmt *select_user_id; static sqlite3_stmt *select_max_user_id; /* INSERT statements */ @@ -77,7 +74,6 @@ static void __uam_finalize_select(void) FINALIZE(select_all_users_data); FINALIZE(select_user_data); - FINALIZE(select_user_id); FINALIZE(select_max_user_id); FUNC_EXIT; @@ -137,8 +133,6 @@ static int __uam_prepare_select(sqlite3 *db) SELECT_ALL_USERS_DATA, __uam_finalize_select); PREPARE_QUERY(rc, db, select_user_data, SELECT_USER_DATA, __uam_finalize_select); - PREPARE_QUERY(rc, db, select_user_id, - SELECT_USER_ID, __uam_finalize_select); PREPARE_QUERY(rc, db, select_max_user_id, SELECT_MAX_USER_ID, __uam_finalize_select); @@ -377,37 +371,6 @@ handle_error: return error_code; } -int _uam_db_get_user_id(const char *account, int *user_id) -{ - FUNC_ENTRY; - int error_code = UAM_ERROR_NONE; - sqlite3_stmt *stmt = select_user_id; - int sql_ret = SQLITE_OK; - - retv_if(!account, UAM_ERROR_INVALID_PARAMETER); - retv_if(!user_id, UAM_ERROR_INVALID_PARAMETER); - - UAM_INFO("Account: %s", account); - - DB_ACTION(sqlite3_bind_text(stmt, 1, account, -1, SQLITE_STATIC), - error_code, handle_error); - - sql_ret = sqlite3_step(stmt); - if (sql_ret != SQLITE_DONE) { - UAM_ERR("Failed to select user [%d:%s]", - sql_ret, sqlite3_errmsg(database_handle)); - error_code = UAM_ERROR_DB_FAILED; - } else { - *user_id = sqlite3_column_int(stmt, 0); - UAM_INFO("%d-%s found", *user_id, account); - } - -handle_error: - sqlite3_reset(stmt); - FUNC_EXIT; - return error_code; -} - GSList *_uam_db_get_all_users(void) { FUNC_ENTRY; -- 2.7.4