Add reset_all_storage_validity 07/321607/1
authorMinje Ahn <minje.ahn@samsung.com>
Wed, 26 Mar 2025 00:05:41 +0000 (09:05 +0900)
committerMinje Ahn <minje.ahn@samsung.com>
Wed, 26 Mar 2025 00:05:41 +0000 (09:05 +0900)
Added to reset the validity of all storages to 0

Change-Id: Ib624174a304e34fdddfb60ab9db639e2fe1b80aa
Signed-off-by: Minje Ahn <minje.ahn@samsung.com>
include/media-svc-storage.h
include/media-svc.h
plugin/media-content-plugin.c
src/media-svc-storage.c
src/media-svc.c

index dd8cf7edaa8618bfde7a711c4465ca8534891b24..d48dfe56d813182d5be3c906058d39b2803b1f94 100644 (file)
@@ -27,6 +27,7 @@ int _media_svc_append_storage(const char *storage_id, const char *storage_path,
 int _media_svc_update_storage_path(sqlite3 *handle, const char *storage_id, const char *path, uid_t uid);
 int _media_svc_delete_invalid_storage(sqlite3 *handle, uid_t uid);
 int _media_svc_update_storage_validity(const char *storage_id, int validity, uid_t uid);
+int _media_svc_reset_all_storage_validity(uid_t uid);
 int _media_svc_get_storage_uuid(sqlite3 *handle, const char *path, char *storage_id, uid_t uid);
 
 #endif /*_MEDIA_SVC_STORAGE_H_*/
index 41dfea53b9706d2873736173324e63654356bf13..20072f1a1d382b06a94684ccb2cabde9b88ce7aa 100644 (file)
@@ -59,6 +59,7 @@ int media_svc_check_storage(sqlite3 *handle, const char *storage_id, char **stor
 int media_svc_insert_storage(sqlite3 *handle, const char *storage_id, const char *storage_path, uid_t uid);
 int media_svc_update_storage(sqlite3 *handle, const char *storage_id, const char *storage_path, uid_t uid);
 int media_svc_set_storage_validity(const char *storage_id, int validity, uid_t uid);
+int media_svc_reset_all_storage_validity(uid_t uid);
 int media_svc_get_storage_id(sqlite3 *handle, const char *path, char *storage_id, uid_t uid);
 int media_svc_set_folder_validity(const char *start_path, int validity, bool is_recursive, uid_t uid);
 
index 3b2a3aaa81784efda285dc5b8ff372e6ec9e7db1..f7da51ac9813149eafc287cbd6210b5dc9557a78 100644 (file)
@@ -70,9 +70,9 @@ int set_storage_validity(const char *storage_id, int validity, uid_t uid)
        return media_svc_set_storage_validity(storage_id, validity, uid);
 }
 
-int set_all_storage_validity(int validity, uid_t uid)
+int reset_all_storage_validity(uid_t uid)
 {
-       return media_svc_set_storage_validity(NULL, validity, uid);
+       return media_svc_reset_all_storage_validity(uid);
 }
 
 int get_storage_id(sqlite3 *handle, const char *path, char *storage_id, uid_t uid)
index e42321de352cc6bfce446f85b04d4312ae9d85ab..7d923908194a42828828bcf75b27fb18e48b6223 100644 (file)
@@ -137,12 +137,15 @@ int _media_svc_delete_invalid_storage(sqlite3 *handle, uid_t uid)
 
 int _media_svc_update_storage_validity(const char *storage_id, int validity, uid_t uid)
 {
-       sql_autoptr q = NULL;
+       sql_autoptr q = sqlite3_mprintf("UPDATE %q SET validity=%d WHERE storage_id=%Q;UPDATE %q SET validity=%d WHERE storage_uuid=%Q;UPDATE %q SET validity=%d WHERE storage_uuid=%Q;",
+               DB_TABLE_STORAGE, validity, storage_id, DB_TABLE_FOLDER, validity, storage_id, DB_TABLE_MEDIA, validity, storage_id);
 
-       if (!storage_id)
-               q = sqlite3_mprintf("UPDATE %q SET validity=%d;UPDATE %q SET validity=%d WHERE storage_uuid IS NOT 'media';UPDATE %q SET validity=%d WHERE storage_uuid IS NOT 'media';", DB_TABLE_STORAGE, validity, DB_TABLE_FOLDER, validity, DB_TABLE_MEDIA, validity);
-       else
-               q = sqlite3_mprintf("UPDATE %q SET validity=%d WHERE storage_id=%Q;UPDATE %q SET validity=%d WHERE storage_uuid=%Q;UPDATE %q SET validity=%d WHERE storage_uuid=%Q;", DB_TABLE_STORAGE, validity, storage_id, DB_TABLE_FOLDER, validity, storage_id, DB_TABLE_MEDIA, validity, storage_id);
+       return _media_svc_sql_query_direct(q, uid);
+}
+
+int _media_svc_reset_all_storage_validity(uid_t uid)
+{
+       const char *q = "UPDATE storage SET validity=0;UPDATE folder SET validity=0 WHERE storage_uuid IS NOT 'media';UPDATE media SET validity=0 WHERE storage_uuid IS NOT 'media';";
 
        return _media_svc_sql_query_direct(q, uid);
 }
index 465bb921372ee25563dffae7f6c085526e37a2b3..a6a28aa27bcdd4822f243293810e5f36b59572b6 100644 (file)
@@ -437,6 +437,11 @@ int media_svc_set_storage_validity(const char *storage_id, int validity, uid_t u
        return _media_svc_update_storage_validity(storage_id, validity, uid);
 }
 
+int media_svc_reset_all_storage_validity(uid_t uid)
+{
+       return _media_svc_reset_all_storage_validity(uid);
+}
+
 int media_svc_get_storage_id(sqlite3 *handle, const char *path, char *storage_id, uid_t uid)
 {
        return _media_svc_get_storage_uuid(handle, path, storage_id, uid);