From 813f4965666fdb07d7cee4a7fcea8d299a71ce46 Mon Sep 17 00:00:00 2001 From: Minje Ahn Date: Mon, 7 Jan 2019 16:37:30 +0900 Subject: [PATCH] Add some deprecated APIs for web API Change-Id: Ib54fe74d99b7930fb6f8381e54ec516afdc97c36 Signed-off-by: Minje Ahn --- include/media_content_internal.h | 13 +++++ include/media_image.h | 3 -- include/media_info.h | 7 --- include/media_info_private.h | 3 ++ include_product/media_content_internal.h | 13 +++++ include_product/media_image.h | 4 -- include_product/media_info.h | 8 ---- src/media_image.c | 40 +++++++++++++++- src/media_info.c | 81 ++++++++++++++++++++++++++++---- 9 files changed, 139 insertions(+), 33 deletions(-) diff --git a/include/media_content_internal.h b/include/media_content_internal.h index d4c6a91..011ae19 100755 --- a/include/media_content_internal.h +++ b/include/media_content_internal.h @@ -58,6 +58,19 @@ int media_filter_get_order_v2(filter_h filter, char **order); /* Only for system session process */ int media_content_connect_with_uid(uid_t uid); +/* For web API */ + +int image_meta_set_orientation(image_meta_h image, media_content_orientation_e orientation) TIZEN_DEPRECATED_API; + +int image_meta_update_to_db(image_meta_h image) TIZEN_DEPRECATED_API; + +int media_info_set_description(media_info_h media, const char *description) TIZEN_DEPRECATED_API; + +int media_info_set_longitude(media_info_h media, double longitude) TIZEN_DEPRECATED_API; + +int media_info_set_latitude(media_info_h media, double latitude) TIZEN_DEPRECATED_API; + +int media_info_set_rating(media_info_h media, int rating) TIZEN_DEPRECATED_API; #ifdef __cplusplus } diff --git a/include/media_image.h b/include/media_image.h index bf053ee..9db9e58 100755 --- a/include/media_image.h +++ b/include/media_image.h @@ -232,9 +232,6 @@ int image_meta_get_iso(image_meta_h image, int *iso); */ int image_meta_get_model(image_meta_h image, char **model); -int image_meta_set_orientation(image_meta_h image, media_content_orientation_e orientation) TIZEN_DEPRECATED_API; - -int image_meta_update_to_db(image_meta_h image) TIZEN_DEPRECATED_API; /** * @} diff --git a/include/media_info.h b/include/media_info.h index 0913f43..e206a02 100755 --- a/include/media_info.h +++ b/include/media_info.h @@ -1161,13 +1161,6 @@ int media_info_start_face_detection(media_info_h media, media_face_detection_com */ int media_info_cancel_face_detection(media_info_h media); -int media_info_set_description(media_info_h media, const char *description) TIZEN_DEPRECATED_API; - -int media_info_set_longitude(media_info_h media, double longitude) TIZEN_DEPRECATED_API; - -int media_info_set_latitude(media_info_h media, double latitude) TIZEN_DEPRECATED_API; - -int media_info_set_rating(media_info_h media, int rating) TIZEN_DEPRECATED_API; /** * @} diff --git a/include/media_info_private.h b/include/media_info_private.h index 5b82f55..6691ae8 100755 --- a/include/media_info_private.h +++ b/include/media_info_private.h @@ -548,6 +548,9 @@ typedef struct _media_content_cb_data { #define UPDATE_BOOKMARK_FROM_BOOKMARK "UPDATE "DB_TABLE_BOOKMARK" SET name=%Q WHERE bookmark_id=%d;" +/* Update Meta*/ +#define UPDATE_IMAGE_META_FROM_MEDIA "UPDATE '%s' SET orientation=%d WHERE media_uuid='%q'" + #define SELECT_MEDIA_ITEM "SELECT "MEDIA_INFO_ITEM" FROM '%s' WHERE validity=1" #define SELECT_MEDIA_FROM_MEDIA "SELECT "MEDIA_INFO_ITEM" FROM '%s' WHERE validity=1 AND media_uuid='%s'" #define SELECT_MEDIA_BY_PATH "SELECT "MEDIA_INFO_ITEM" FROM '%s' WHERE validity=1 AND path='%q'" diff --git a/include_product/media_content_internal.h b/include_product/media_content_internal.h index d4c6a91..011ae19 100755 --- a/include_product/media_content_internal.h +++ b/include_product/media_content_internal.h @@ -58,6 +58,19 @@ int media_filter_get_order_v2(filter_h filter, char **order); /* Only for system session process */ int media_content_connect_with_uid(uid_t uid); +/* For web API */ + +int image_meta_set_orientation(image_meta_h image, media_content_orientation_e orientation) TIZEN_DEPRECATED_API; + +int image_meta_update_to_db(image_meta_h image) TIZEN_DEPRECATED_API; + +int media_info_set_description(media_info_h media, const char *description) TIZEN_DEPRECATED_API; + +int media_info_set_longitude(media_info_h media, double longitude) TIZEN_DEPRECATED_API; + +int media_info_set_latitude(media_info_h media, double latitude) TIZEN_DEPRECATED_API; + +int media_info_set_rating(media_info_h media, int rating) TIZEN_DEPRECATED_API; #ifdef __cplusplus } diff --git a/include_product/media_image.h b/include_product/media_image.h index bf053ee..6666edd 100755 --- a/include_product/media_image.h +++ b/include_product/media_image.h @@ -232,10 +232,6 @@ int image_meta_get_iso(image_meta_h image, int *iso); */ int image_meta_get_model(image_meta_h image, char **model); -int image_meta_set_orientation(image_meta_h image, media_content_orientation_e orientation) TIZEN_DEPRECATED_API; - -int image_meta_update_to_db(image_meta_h image) TIZEN_DEPRECATED_API; - /** * @} */ diff --git a/include_product/media_info.h b/include_product/media_info.h index 0913f43..9b67dae 100755 --- a/include_product/media_info.h +++ b/include_product/media_info.h @@ -1161,14 +1161,6 @@ int media_info_start_face_detection(media_info_h media, media_face_detection_com */ int media_info_cancel_face_detection(media_info_h media); -int media_info_set_description(media_info_h media, const char *description) TIZEN_DEPRECATED_API; - -int media_info_set_longitude(media_info_h media, double longitude) TIZEN_DEPRECATED_API; - -int media_info_set_latitude(media_info_h media, double latitude) TIZEN_DEPRECATED_API; - -int media_info_set_rating(media_info_h media, int rating) TIZEN_DEPRECATED_API; - /** * @} */ diff --git a/src/media_image.c b/src/media_image.c index 3a7512d..587f4ab 100755 --- a/src/media_image.c +++ b/src/media_image.c @@ -257,10 +257,46 @@ int image_meta_get_model(image_meta_h image, char **model) int image_meta_set_orientation(image_meta_h image, media_content_orientation_e orientation) { - return 0; + int ret = MEDIA_CONTENT_ERROR_NONE; + media_content_warn("DEPRECATION WARNING: image_meta_set_orientation() is deprecated and will be removed from next release."); + image_meta_s *_image = (image_meta_s*)image; + + if (_image == NULL) { + media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER); + return MEDIA_CONTENT_ERROR_INVALID_PARAMETER; + } + + if ((orientation < MEDIA_CONTENT_ORIENTATION_NOT_AVAILABLE) || (orientation > MEDIA_CONTENT_ORIENTATION_ROT_270)) { + media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER); + return MEDIA_CONTENT_ERROR_INVALID_PARAMETER; + } + + _image->orientation = orientation; + + return ret; } int image_meta_update_to_db(image_meta_h image) { - return 0; + int ret = MEDIA_CONTENT_ERROR_NONE; + media_content_warn("DEPRECATION WARNING: image_meta_update_to_db() is deprecated and will be removed from next release."); + image_meta_s *_image = (image_meta_s*)image; + char *sql = NULL; + + if (_image != NULL && STRING_VALID(_image->media_id)) { + char storage_id[MEDIA_CONTENT_UUID_SIZE+1] = {0,}; + memset(storage_id, 0x00, sizeof(storage_id)); + + ret = _media_db_get_storage_id_by_media_id(_image->media_id, storage_id); + media_content_retv_if(ret != MEDIA_CONTENT_ERROR_NONE, ret); + + sql = sqlite3_mprintf(UPDATE_IMAGE_META_FROM_MEDIA, storage_id, _image->orientation, _image->media_id); + ret = _content_query_sql(sql); + SQLITE3_SAFE_FREE(sql); + } else { + media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER); + ret = MEDIA_CONTENT_ERROR_INVALID_PARAMETER; + } + + return ret; } diff --git a/src/media_info.c b/src/media_info.c index 091a49e..cc33fdb 100755 --- a/src/media_info.c +++ b/src/media_info.c @@ -1829,19 +1829,29 @@ int media_info_update_to_db(media_info_h media) char *test_sql = sqlite3_mprintf("%f, %f, %f", _media->longitude, _media->latitude, _media->altitude); SQLITE3_SAFE_FREE(test_sql); + /*Update Pinyin If Support Pinyin*/ + char *description_pinyin = NULL; + bool pinyin_support = FALSE; + + /*Update Pinyin If Support Pinyin*/ + media_svc_check_pinyin_support(&pinyin_support); + if (pinyin_support) { + if (STRING_VALID(_media->description)) + media_svc_get_pinyin(_media->description, &description_pinyin); + } #ifdef _USE_TVPD_MODE #ifdef _USE_SENIOR_MODE if (_media_content_is_support_senior_mode()) { - set_sql = sqlite3_mprintf("played_count=%d, last_played_time=%d, last_played_position=%d, favourite=%d, contact=%Q, app_data=%Q", - _media->played_count, _media->played_time, _media->played_position, _media->favourite, _media->contact, _media->app_data); + set_sql = sqlite3_mprintf("description=%Q, longitude=%f, latitude=%f, description_pinyin=%Q, played_count=%d, last_played_time=%d, last_played_position=%d, favourite=%d, contact=%Q, app_data=%Q", + _media->description, _media->longitude, _media->latitude, description_pinyin, _media->played_count, _media->played_time, _media->played_position, _media->favourite, _media->contact, _media->app_data); } else #endif { - set_sql = sqlite3_mprintf("played_count=%d, last_played_time=%d, last_played_position=%d, favourite=%d", - _media->played_count, _media->played_time, _media->played_position, _media->favourite); + set_sql = sqlite3_mprintf("description=%Q, longitude=%f, latitude=%f, description_pinyin=%Q, played_count=%d, last_played_time=%d, last_played_position=%d, favourite=%d", + _media->description, _media->longitude, _media->latitude, description_pinyin, _media->played_count, _media->played_time, _media->played_position, _media->favourite); } #else - set_sql = sqlite3_mprintf("favourite=%d", _media->favourite); + set_sql = sqlite3_mprintf("description=%Q, longitude=%f, latitude=%f, description_pinyin=%Q, favourite=%d", _media->description, _media->longitude, _media->latitude, description_pinyin, _media->favourite); #endif sql = sqlite3_mprintf("UPDATE %Q SET %s WHERE media_uuid=%Q", _media->storage_uuid, set_sql, _media->media_id); @@ -1850,6 +1860,8 @@ int media_info_update_to_db(media_info_h media) SQLITE3_SAFE_FREE(set_sql); SQLITE3_SAFE_FREE(sql); + SAFE_FREE(description_pinyin); + if (ret == MEDIA_CONTENT_ERROR_NONE) { /* Send notification for this update */ media_content_debug("Update is successfull. Send notification for this"); @@ -2044,21 +2056,72 @@ int media_info_cancel_face_detection(media_info_h media) int media_info_set_description(media_info_h media, const char *description) { - return 0; + int ret = MEDIA_CONTENT_ERROR_NONE; + media_content_warn("DEPRECATION WARNING: media_info_set_description() is deprecated and will be removed from next release."); + media_info_s *_media = (media_info_s*)media; + + if (_media != NULL) { + SAFE_FREE(_media->description); + + if (STRING_VALID(description)) { + _media->description = strdup(description); + media_content_retvm_if(_media->description == NULL, MEDIA_CONTENT_ERROR_OUT_OF_MEMORY, "OUT_OF_MEMORY"); + } else { + _media->description = NULL; + } + } else { + media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER); + ret = MEDIA_CONTENT_ERROR_INVALID_PARAMETER; + } + + return ret; } int media_info_set_longitude(media_info_h media, double longitude) { - return 0; + int ret = MEDIA_CONTENT_ERROR_NONE; + media_content_warn("DEPRECATION WARNING: media_info_set_longitude() is deprecated and will be removed from next release."); + media_info_s *_media = (media_info_s*)media; + + if (_media != NULL) { + _media->longitude = longitude; + } else { + media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER); + ret = MEDIA_CONTENT_ERROR_INVALID_PARAMETER; + } + + return ret; } int media_info_set_latitude(media_info_h media, double latitude) { - return 0; + int ret = MEDIA_CONTENT_ERROR_NONE; + media_content_warn("DEPRECATION WARNING: media_info_set_latitude() is deprecated and will be removed from next release."); + media_info_s *_media = (media_info_s*)media; + + if (_media != NULL) { + _media->latitude = latitude; + } else { + media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER); + ret = MEDIA_CONTENT_ERROR_INVALID_PARAMETER; + } + + return ret; } int media_info_set_rating(media_info_h media, int rating) { - return 0; + int ret = MEDIA_CONTENT_ERROR_NONE; + media_content_warn("DEPRECATION WARNING: media_info_set_rating() is deprecated and will be removed from next release."); + media_info_s *_media = (media_info_s*)media; + + if (_media != NULL) { + _media->rating = rating; + } else { + media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER); + ret = MEDIA_CONTENT_ERROR_INVALID_PARAMETER; + } + + return ret; } -- 2.7.4