Add and Modify APIs for checking activated server/client 76/200976/1
authorhj kim <backto.kim@samsung.com>
Thu, 7 Mar 2019 00:46:50 +0000 (09:46 +0900)
committerhj kim <backto.kim@samsung.com>
Thu, 7 Mar 2019 00:46:50 +0000 (09:46 +0900)
Change-Id: I0db4b4ada69d78dc4ca30173d79def5a02fae8cb

include/media_controller_db.h
src/media_controller_db.c
src/media_controller_server.c

index 881c05f..9c40d56 100755 (executable)
@@ -23,8 +23,8 @@
 int mc_db_create_server_table(const char *server_name);
 int mc_db_delete_server_table(const char *server_name);
 gboolean mc_db_is_server_table_exist(void *handle, const char *server_name);
-gboolean mc_db_is_client_table_exist(void *handle, const char *client_name);
-
+gboolean _mc_db_is_activated_client(void *handle, const char *client_name);
+gboolean _mc_db_is_activated_server(void *handle, const char *server_name);
 int mc_db_update_playback_info(const char *table_name, const media_controller_playback_s playback);
 int mc_db_update_whole_metadata(const char *server_name,
                                                const char *title, const char *artist, const char *album, const char *author, const char *genre, const char *duration, const char *date,
index 203a3ff..d7188d2 100755 (executable)
@@ -901,15 +901,15 @@ gboolean mc_db_is_server_table_exist(void *handle, const char *server_name)
        return TRUE;
 }
 
-gboolean mc_db_is_client_table_exist(void *handle, const char *client_name)
+gboolean _mc_db_is_activated_client(void *handle, const char *client_name)
 {
        char *sql_str = NULL;
        int count = 0;
 
        mc_retvm_if(handle == NULL, FALSE, "Handle is NULL");
-       mc_retvm_if(client_name == NULL, FALSE, "server_name is NULL");
+       mc_retvm_if(client_name == NULL, FALSE, "client_name is NULL");
 
-       mc_debug("client name [%s]", client_name);
+       mc_secure_debug("client name [%s]", client_name);
 
        sql_str = sqlite3_mprintf("SELECT COUNT(*) FROM '%q' WHERE client_name='%q'", MC_DB_TABLE_CLIENT_LIST, client_name);
        mc_retvm_if(!MC_STRING_VALID(sql_str), FALSE, "SQL string is null");
@@ -917,10 +917,8 @@ gboolean mc_db_is_client_table_exist(void *handle, const char *client_name)
        count = __mc_db_get_count(handle, sql_str);
        SQLITE3_SAFE_FREE(sql_str);
 
-       mc_debug("table count [%d]", count);
-
        if (count <= 0) {
-               mc_debug("No client info [%s]", client_name);
+               mc_secure_error("[%s] is not activated", client_name);
                mc_db_foreach_client_list(handle, NULL, NULL);
 
                return FALSE;
@@ -929,6 +927,32 @@ gboolean mc_db_is_client_table_exist(void *handle, const char *client_name)
        return TRUE;
 }
 
+gboolean _mc_db_is_activated_server(void *handle, const char *server_name)
+{
+       char *sql_str = NULL;
+       int count = 0;
+
+       mc_retvm_if(handle == NULL, FALSE, "Handle is NULL");
+       mc_retvm_if(server_name == NULL, FALSE, "server_name is NULL");
+
+       mc_secure_debug("server name [%s]", server_name);
+
+       sql_str = sqlite3_mprintf("SELECT COUNT(*) FROM '%q' WHERE server_name='%q'", MC_DB_TABLE_SERVER_LIST, server_name);
+       mc_retvm_if(!MC_STRING_VALID(sql_str), FALSE, "SQL string is null");
+
+       count = __mc_db_get_count(handle, sql_str);
+       SQLITE3_SAFE_FREE(sql_str);
+
+       if (count <= 0) {
+               mc_secure_error("[%s] is not activated", server_name);
+               mc_db_foreach_server_list(handle, NULL, NULL);
+
+               return FALSE;
+       }
+
+       return TRUE;
+}
+
 int mc_db_foreach_server_list(void *handle, mc_activated_server_cb callback, void *user_data)
 {
        int ret = MEDIA_CONTROLLER_ERROR_NONE;
index 020de9d..6c0f12b 100755 (executable)
@@ -597,7 +597,7 @@ static int __mc_server_send_event(mc_server_h server, const char *client_name, c
        mc_retvm_if(!MC_STRING_VALID(command_type), MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Invalid command_type");
        mc_retvm_if(!MC_STRING_VALID(signal_name), MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Invalid signal_name");
        mc_retvm_if(!MC_STRING_VALID(message), MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Invalid message");
-       mc_retvm_if(mc_db_is_client_table_exist(mc_server->db_handle, client_name) == FALSE, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Invalid client_name");
+       mc_retvm_if(_mc_db_is_activated_client(mc_server->db_handle, client_name) == FALSE, MEDIA_CONTROLLER_ERROR_INVALID_PARAMETER, "Invalid client_name");
 
        ret = mc_util_set_command_available(MC_PRIV_TYPE_SERVER, mc_server->server_name, command_type, event);
        mc_retvm_if(ret != MEDIA_CONTROLLER_ERROR_NONE, ret, "Error mc_util_set_command_available [%d]", ret);