#include "media-svc-db-utils.h"
#include "media-svc-media.h"
+typedef enum {
+ DB_LIST_MEDIA = 0,
+ DB_LIST_FOLDER,
+ DB_LIST_PLAYLIST_MAP,
+ DB_LIST_PLAYLIST,
+ DB_LIST_ALBUM,
+ DB_LIST_TAG_MAP,
+ DB_LIST_TAG,
+ DB_LIST_BOOKMARK,
+ DB_LIST_STORAGE,
+ DB_LIST_FACE_SCAN_LIST,
+ DB_LIST_FACE,
+ DB_LIST_MAX,
+} media_svc_table_slist_e;
+
static GHashTable *table;
static GSList *column_list[DB_LIST_MAX];
return _media_svc_sql_query(q, uid);
}
-int _media_svc_make_table_query(const char *table_name, media_svc_table_slist_e list, uid_t uid)
+static int __media_svc_make_table_query(const char *table_name, media_svc_table_slist_e list, uid_t uid)
{
int ret = MS_MEDIA_ERR_NONE;
GSList *iter = NULL;
g_free(col);
}
-int _media_svc_init_table_query(void)
+static void __media_svc_init_table_query(void)
{
- int ret = MS_MEDIA_ERR_NONE;
-
/*variable initialize.. */
table = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, __media_svc_table_free);
__add_column_info(&column_list[DB_LIST_FACE], "face_rect_h", DB_TYPE_INT, "DEFAULT 0", true, false, false);
__add_column_info(&column_list[DB_LIST_FACE], "face_orientation", DB_TYPE_INT, "DEFAULT 0", false, false, false);
__add_column_info(&column_list[DB_LIST_FACE], "media_face_tag", DB_TYPE_TEXT, NULL, false, false, false);
-
- return ret;
}
-void _media_svc_destroy_table_query(void)
+static void __media_svc_destroy_table_query(void)
{
int i = 0;
}
}
+int _media_svc_create_table(uid_t uid)
+{
+ int ret = MS_MEDIA_ERR_NONE;
+ media_svc_debug_fenter();
+ __media_svc_init_table_query();
+
+ /*create media table*/
+ ret = __media_svc_make_table_query(DB_TABLE_MEDIA, DB_LIST_MEDIA, uid);
+ if (ret != MS_MEDIA_ERR_NONE) {
+ media_svc_error("failed to create media table");
+ goto ERROR;
+ }
+
+ /*create folder table*/
+ ret = __media_svc_make_table_query(DB_TABLE_FOLDER, DB_LIST_FOLDER, uid);
+ if (ret != MS_MEDIA_ERR_NONE) {
+ media_svc_error("failed to create folder table");
+ goto ERROR;
+ }
+
+ /*create playlist_map table*/
+ ret = __media_svc_make_table_query(DB_TABLE_PLAYLIST_MAP, DB_LIST_PLAYLIST_MAP, uid);
+ if (ret != MS_MEDIA_ERR_NONE) {
+ media_svc_error("failed to create playlist_map table");
+ goto ERROR;
+ }
+
+ /*create playlist table*/
+ ret = __media_svc_make_table_query(DB_TABLE_PLAYLIST, DB_LIST_PLAYLIST, uid);
+ if (ret != MS_MEDIA_ERR_NONE) {
+ media_svc_error("failed to create playlist table");
+ goto ERROR;
+ }
+
+ /* create album table*/
+ ret = __media_svc_make_table_query(DB_TABLE_ALBUM, DB_LIST_ALBUM, uid);
+ if (ret != MS_MEDIA_ERR_NONE) {
+ media_svc_error("failed to create album table");
+ goto ERROR;
+ }
+
+ /*create tag_map table*/
+ ret = __media_svc_make_table_query(DB_TABLE_TAG_MAP, DB_LIST_TAG_MAP, uid);
+ if (ret != MS_MEDIA_ERR_NONE) {
+ media_svc_error("failed to create tag_map table");
+ goto ERROR;
+ }
+
+ /*create tag table*/
+ ret = __media_svc_make_table_query(DB_TABLE_TAG, DB_LIST_TAG, uid);
+ if (ret != MS_MEDIA_ERR_NONE) {
+ media_svc_error("failed to create tag table");
+ goto ERROR;
+ }
+
+ /*create bookmark table*/
+ ret = __media_svc_make_table_query(DB_TABLE_BOOKMARK, DB_LIST_BOOKMARK, uid);
+ if (ret != MS_MEDIA_ERR_NONE) {
+ media_svc_error("failed to create bookmark table");
+ goto ERROR;
+ }
+
+ /*create storage table from tizen 2.4 */
+ ret = __media_svc_make_table_query(DB_TABLE_STORAGE, DB_LIST_STORAGE, uid);
+ if (ret != MS_MEDIA_ERR_NONE) {
+ media_svc_error("failed to create storage table");
+ goto ERROR;
+ }
+
+ /*create face table. from tizen 3.0*/
+ ret = __media_svc_make_table_query(DB_TABLE_FACE_SCAN_LIST, DB_LIST_FACE_SCAN_LIST, uid);
+ if (ret != MS_MEDIA_ERR_NONE) {
+ media_svc_error("failed to create face_scan_list table");
+ goto ERROR;
+ }
+
+ ret = __media_svc_make_table_query(DB_TABLE_FACE, DB_LIST_FACE, uid);
+ if (ret != MS_MEDIA_ERR_NONE) {
+ media_svc_error("failed to create face table");
+ goto ERROR;
+ }
+ERROR:
+ __media_svc_destroy_table_query();
+ media_svc_debug_fleave();
+
+ return ret;
+}
+
int _media_svc_sql_query(const char *sql_str, uid_t uid)
{
return media_db_request_update_db(sql_str, uid);
return __media_svc_get_result(handle, sql_str, stmt);
}
+static void __media_svc_sql_query_release(GList **query_list)
+{
+ if (*query_list) {
+ g_list_free(*query_list);
+ *query_list = NULL;
+ }
+}
+
int _media_svc_sql_query_list(GList **query_list, uid_t uid)
{
int ret = MS_MEDIA_ERR_NONE;
sqlite3_free(q);
}
- _media_svc_sql_query_release(query_list);
+ __media_svc_sql_query_release(query_list);
return MS_MEDIA_ERR_NONE;
}
if (SQLITE_OK != ret) {
media_svc_error("Commit failed");
media_db_disconnect(handle);
- _media_svc_sql_query_release(query_list);
+ __media_svc_sql_query_release(query_list);
return MS_MEDIA_ERR_DB_INTERNAL;
}
}
media_db_disconnect(handle);
ZERO_LEN:
- _media_svc_sql_query_release(query_list);
+ __media_svc_sql_query_release(query_list);
return MS_MEDIA_ERR_NONE;
}
{
*query_list = g_list_append(*query_list, *query);
}
-
-void _media_svc_sql_query_release(GList **query_list)
-{
- if (*query_list) {
- g_list_free(*query_list);
- *query_list = NULL;
- }
-}
int media_svc_create_table(uid_t uid)
{
- int ret = MS_MEDIA_ERR_NONE;
- media_svc_debug_fenter();
-
- ret = _media_svc_init_table_query();
- if (ret != MS_MEDIA_ERR_NONE) {
- media_svc_error("_media_svc_init_table_query fail.");
- goto ERROR;
- }
-
- /*create media table*/
- ret = _media_svc_make_table_query(DB_TABLE_MEDIA, DB_LIST_MEDIA, uid);
- if (ret != MS_MEDIA_ERR_NONE) {
- media_svc_error("_media_svc_make_table_query fail.");
- goto ERROR;
- }
-
- /*create folder table*/
- ret = _media_svc_make_table_query(DB_TABLE_FOLDER, DB_LIST_FOLDER, uid);
- if (ret != MS_MEDIA_ERR_NONE) {
- media_svc_error("_media_svc_make_table_query fail.");
- goto ERROR;
- }
-
- /*create playlist_map table*/
- ret = _media_svc_make_table_query(DB_TABLE_PLAYLIST_MAP, DB_LIST_PLAYLIST_MAP, uid);
- if (ret != MS_MEDIA_ERR_NONE) {
- media_svc_error("_media_svc_make_table_query fail.");
- goto ERROR;
- }
-
- /*create playlist table*/
- ret = _media_svc_make_table_query(DB_TABLE_PLAYLIST, DB_LIST_PLAYLIST, uid);
- if (ret != MS_MEDIA_ERR_NONE) {
- media_svc_error("_media_svc_make_table_query fail.");
- goto ERROR;
- }
-
- /* create album table*/
- ret = _media_svc_make_table_query(DB_TABLE_ALBUM, DB_LIST_ALBUM, uid);
- if (ret != MS_MEDIA_ERR_NONE) {
- media_svc_error("_media_svc_make_table_query fail.");
- goto ERROR;
- }
-
- /*create tag_map table*/
- ret = _media_svc_make_table_query(DB_TABLE_TAG_MAP, DB_LIST_TAG_MAP, uid);
- if (ret != MS_MEDIA_ERR_NONE) {
- media_svc_error("_media_svc_make_table_query fail.");
- goto ERROR;
- }
-
- /*create tag table*/
- ret = _media_svc_make_table_query(DB_TABLE_TAG, DB_LIST_TAG, uid);
- if (ret != MS_MEDIA_ERR_NONE) {
- media_svc_error("_media_svc_make_table_query fail.");
- goto ERROR;
- }
-
- /*create bookmark table*/
- ret = _media_svc_make_table_query(DB_TABLE_BOOKMARK, DB_LIST_BOOKMARK, uid);
- if (ret != MS_MEDIA_ERR_NONE) {
- media_svc_error("_media_svc_make_table_query fail.");
- goto ERROR;
- }
-
- /*create storage table from tizen 2.4 */
- ret = _media_svc_make_table_query(DB_TABLE_STORAGE, DB_LIST_STORAGE, uid);
- if (ret != MS_MEDIA_ERR_NONE) {
- media_svc_error("_media_svc_make_table_query fail.");
- goto ERROR;
- }
-
- /*create face table. from tizen 3.0*/
- ret = _media_svc_make_table_query(DB_TABLE_FACE_SCAN_LIST, DB_LIST_FACE_SCAN_LIST, uid);
- if (ret != MS_MEDIA_ERR_NONE) {
- media_svc_error("_media_svc_make_table_query fail.");
- goto ERROR;
- }
-
- ret = _media_svc_make_table_query(DB_TABLE_FACE, DB_LIST_FACE, uid);
- if (ret != MS_MEDIA_ERR_NONE) {
- media_svc_error("_media_svc_make_table_query fail.");
- goto ERROR;
- }
-ERROR:
- _media_svc_destroy_table_query();
-
- media_svc_debug_fleave();
-
- return ret;
+ return _media_svc_create_table(uid);
}
int media_svc_check_item_exist_by_path(sqlite3 *handle, const char *storage_id, const char *path)