media_svc_retvm_if(!STRING_VALID(storage_id), MS_MEDIA_ERR_INVALID_PARAMETER, "storage_id is NULL");
media_svc_retvm_if(!STRING_VALID(path), MS_MEDIA_ERR_INVALID_PARAMETER, "path is NULL");
- media_svc_content_info_s content_info;
- memset(&content_info, 0, sizeof(media_svc_content_info_s));
+ media_svc_content_info_s content_info = { 0, };
/*Set media info*/
ret = _media_svc_set_media_info(&content_info, storage_id, path, false);
break;
case MEDIA_SVC_MEDIA_TYPE_SOUND:
case MEDIA_SVC_MEDIA_TYPE_MUSIC:
- ret = _media_svc_extract_audio_metadata(handle, true, &content_info, uid);
+ _media_svc_extract_audio_metadata(handle, true, &content_info, uid);
break;
case MEDIA_SVC_MEDIA_TYPE_BOOK:
ret = _media_svc_extract_book_metadata(&content_info);
- /* The 'TITLE' should always be filled in */
- if (!content_info.media_meta.title || strlen(content_info.media_meta.title) == 0) {
- g_free(content_info.media_meta.title);
- content_info.media_meta.title = _media_svc_get_title_from_filename(content_info.file_name);
- }
break;
default:
/* The 'TITLE' should always be filled in */
content_info.folder_id = folder_id;
media_svc_retv_del_if(content_info.folder_id <= 0, MS_MEDIA_ERR_INTERNAL, &content_info);
- ret = _media_svc_insert_item_with_data(true, &content_info, true, uid);
+ ret = _media_svc_insert_item_stack(&content_info);
media_svc_retv_del_if(ret != MS_MEDIA_ERR_NONE, ret, &content_info);
if (g_insert_with_noti)
media_svc_retvm_if(!STRING_VALID(storage_id), MS_MEDIA_ERR_INVALID_PARAMETER, "storage_id is NULL");
media_svc_retvm_if(!STRING_VALID(path), MS_MEDIA_ERR_INVALID_PARAMETER, "path is NULL");
- media_svc_content_info_s content_info;
- memset(&content_info, 0, sizeof(media_svc_content_info_s));
+ media_svc_content_info_s content_info = { 0, };
/*Set media info*/
ret = _media_svc_set_media_info(&content_info, storage_id, path, false);
break;
case MEDIA_SVC_MEDIA_TYPE_SOUND:
case MEDIA_SVC_MEDIA_TYPE_MUSIC:
- ret = _media_svc_extract_audio_metadata(handle, false, &content_info, uid);
+ _media_svc_extract_audio_metadata(handle, false, &content_info, uid);
break;
case MEDIA_SVC_MEDIA_TYPE_BOOK:
ret = _media_svc_extract_book_metadata(&content_info);
- /* The 'TITLE' should always be filled in */
- if (!content_info.media_meta.title || strlen(content_info.media_meta.title) == 0) {
- g_free(content_info.media_meta.title);
- content_info.media_meta.title = _media_svc_get_title_from_filename(content_info.file_name);
- }
break;
default:
/* The 'TITLE' should always be filled in */
}
}
- ret = _media_svc_insert_item_with_data(false, &content_info, false, uid);
-
+ ret = _media_svc_insert_item(&content_info, uid);
if (ret == MS_MEDIA_ERR_NONE) {
media_svc_debug("Insertion is successful. Sending noti for this");
_media_svc_publish_noti(MS_MEDIA_ITEM_INSERT, content_info.path, content_info.media_type, content_info.media_uuid, content_info.mime_type);
media_svc_noti_item *noti_item = NULL;
media_svc_retvm_if(handle == NULL, MS_MEDIA_ERR_INVALID_PARAMETER, "Handle is NULL");
- media_svc_retvm_if(!STRING_VALID(storage_id), MS_MEDIA_ERR_INVALID_PARAMETER, "storage_id is NULL");
media_svc_retvm_if(!STRING_VALID(path), MS_MEDIA_ERR_INVALID_PARAMETER, "path is NULL");
/*Set media info*/
- ret = _media_svc_set_media_info(&content_info, storage_id, path, true);
+ ret = _media_svc_set_media_info(&content_info, NULL, path, true);
media_svc_retv_if(ret != MS_MEDIA_ERR_NONE, ret);
/* Initialize thumbnail information to remake thumbnail. */
if (ret != MS_MEDIA_ERR_NONE && ret != MS_MEDIA_ERR_DB_NO_RECORD)
goto REFRESH_FINALIZE;
- if (STRING_VALID(thumb_path)) {
+ if (strlen(thumb_path) > 0) {
_media_svc_remove_file(thumb_path);
ret = _media_svc_update_thumbnail_path(path, NULL, uid);
break;
case MEDIA_SVC_MEDIA_TYPE_SOUND:
case MEDIA_SVC_MEDIA_TYPE_MUSIC:
- ret = _media_svc_extract_audio_metadata(handle, is_direct, &content_info, uid);
+ _media_svc_extract_audio_metadata(handle, is_direct, &content_info, uid);
break;
case MEDIA_SVC_MEDIA_TYPE_BOOK:
ret = _media_svc_extract_book_metadata(&content_info);
- /* The 'TITLE' should always be filled in */
- if (!content_info.media_meta.title || strlen(content_info.media_meta.title) == 0) {
- g_free(content_info.media_meta.title);
- content_info.media_meta.title = _media_svc_get_title_from_filename(content_info.file_name);
- }
break;
default:
/* The 'TITLE' should always be filled in */
return ret;
}
-int media_svc_send_dir_update_noti(const char *dir_path, const char *folder_id, media_item_update_type_e update_type, int pid)
+int media_svc_send_dir_update_noti(const char *dir_path, const char *folder_id, int update_type, int pid)
{
media_svc_retvm_if(!STRING_VALID(dir_path), MS_MEDIA_ERR_INVALID_PARAMETER, "dir_path is NULL");
- return _media_svc_publish_dir_noti(update_type, dir_path, folder_id, pid);
+ return _media_svc_publish_dir_noti((media_item_update_type_e)update_type, dir_path, folder_id, pid);
}
-int media_svc_publish_noti(media_item_update_type_e update_type, const char *path, media_type_e media_type, const char *uuid, const char *mime_type)
+int media_svc_publish_update_noti(const char *path, int media_type, const char *uuid, const char *mime_type)
{
- return _media_svc_publish_noti(update_type, path, media_type, uuid, mime_type);
+ return _media_svc_publish_noti(MS_MEDIA_ITEM_UPDATE, path, media_type, uuid, mime_type);
}
int media_svc_set_storage_validity(const char *storage_id, int validity, uid_t uid)
char *sql = NULL;
// 1. Check media type
- if (media_type != MS_MEDIA_IMAGE && media_type != MS_MEDIA_VIDEO)
+ if (media_type != MEDIA_SVC_MEDIA_TYPE_IMAGE && media_type != MEDIA_SVC_MEDIA_TYPE_VIDEO)
return MS_MEDIA_ERR_THUMB_UNSUPPORTED;
// 2. try to create thumbnail
return ret;
}
+
+int media_svc_check_db(sqlite3 *handle, uid_t uid)
+{
+ int ret = MS_MEDIA_ERR_NONE;
+ bool exist = false;
+
+ ret = media_svc_check_table_exist(handle, &exist);
+ if (ret != MS_MEDIA_ERR_NONE)
+ return ret;
+
+ if (!exist)
+ ret = media_svc_create_table(uid);
+
+ return ret;
+}
\ No newline at end of file