From cc8ea6e692bf7681209cb1b2e503f41af1629a62 Mon Sep 17 00:00:00 2001 From: Rohit Verma Date: Sun, 27 Oct 2024 13:06:48 +0530 Subject: [PATCH] add suspend keyword and refactor code --- .../fr/free/nrw/commons/nearby/PlaceDao.java | 12 +++--------- .../nrw/commons/upload/depicts/DepictsDao.kt | 16 ++++++++-------- 2 files changed, 11 insertions(+), 17 deletions(-) diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/PlaceDao.java b/app/src/main/java/fr/free/nrw/commons/nearby/PlaceDao.java index 7babee3b7..9e4292114 100644 --- a/app/src/main/java/fr/free/nrw/commons/nearby/PlaceDao.java +++ b/app/src/main/java/fr/free/nrw/commons/nearby/PlaceDao.java @@ -37,15 +37,11 @@ public abstract class PlaceDao { */ public Completable save(final Place place) { return Completable - .fromAction(() -> { - saveSynchronous(place); - }); + .fromAction(() -> saveSynchronous(place)); } /** * Deletes all Place objects from the database. - * - * @return A Completable that completes once the deletion operation is done. */ @Query("DELETE FROM place") public abstract void deleteAllSynchronous(); @@ -53,11 +49,9 @@ public abstract class PlaceDao { /** * Deletes all Place objects from the database. * + * @return A Completable that completes once the deletion operation is done. */ public Completable deleteAll() { - return Completable - .fromAction(() -> { - deleteAllSynchronous(); - }); + return Completable.fromAction(this::deleteAllSynchronous); } } diff --git a/app/src/main/java/fr/free/nrw/commons/upload/depicts/DepictsDao.kt b/app/src/main/java/fr/free/nrw/commons/upload/depicts/DepictsDao.kt index c20d65abf..139b67d59 100644 --- a/app/src/main/java/fr/free/nrw/commons/upload/depicts/DepictsDao.kt +++ b/app/src/main/java/fr/free/nrw/commons/upload/depicts/DepictsDao.kt @@ -22,21 +22,21 @@ abstract class DepictsDao { private val maxItemsAllowed = 10 @Insert(onConflict = OnConflictStrategy.REPLACE) - abstract fun insert(depictedItem: Depicts) + abstract suspend fun insert(depictedItem: Depicts) @Query("Select * From depicts_table order by lastUsed DESC") - abstract fun getAllDepicts(): List + abstract suspend fun getAllDepicts(): List @Query("Select * From depicts_table order by lastUsed DESC LIMIT :n OFFSET 10") - abstract fun getDepictsForDeletion(n: Int): List + abstract suspend fun getDepictsForDeletion(n: Int): List @Delete - abstract fun delete(depicts: Depicts) + abstract suspend fun delete(depicts: Depicts) /** * Gets all Depicts objects from the database, ordered by lastUsed in descending order. * - * @return A list of Depicts objects. + * @return Deferred list of Depicts objects. */ fun depictsList(): Deferred> = CoroutineScope(Dispatchers.IO).async { @@ -48,7 +48,7 @@ abstract class DepictsDao { * * @param depictedItem The Depicts object to insert. */ - private fun insertDepict(depictedItem: Depicts) = + fun insertDepict(depictedItem: Depicts) = CoroutineScope(Dispatchers.IO).launch { insert(depictedItem) } @@ -59,7 +59,7 @@ abstract class DepictsDao { * @param n The number of depicts to delete. * @return A list of Depicts objects to delete. */ - private suspend fun depictsForDeletion(n: Int): Deferred> = + fun depictsForDeletion(n: Int): Deferred> = CoroutineScope(Dispatchers.IO).async { getDepictsForDeletion(n) } @@ -69,7 +69,7 @@ abstract class DepictsDao { * * @param depicts The Depicts object to delete. */ - private suspend fun deleteDepicts(depicts: Depicts) = + fun deleteDepicts(depicts: Depicts) = CoroutineScope(Dispatchers.IO).launch { delete(depicts) }