Cleanup UpdatesPresenter deleteChapters (#8273)

(cherry picked from commit 4a244a598bd8caceaab76ae2c851d8e8ef04ed21)
This commit is contained in:
AntsyLich 2022-10-22 22:58:14 +06:00 committed by Jobobby04
parent bd9125f9fe
commit 24115a9ddc

View File

@ -256,14 +256,15 @@ class UpdatesPresenter(
*/
fun deleteChapters(updatesItem: List<UpdatesItem>) {
presenterScope.launchNonCancellable {
val groupedUpdates = updatesItem.groupBy { it.update.mangaId }.values
groupedUpdates.flatMap { updates ->
val mangaId = updates.first().update.mangaId
val manga = getManga.await(mangaId) ?: return@flatMap emptyList()
val source = sourceManager.get(manga.source) ?: return@flatMap emptyList()
val chapters = updates.mapNotNull { getChapter.await(it.update.chapterId)?.toDbChapter() }
downloadManager.deleteChapters(chapters, manga, source).mapNotNull { it.id }
}
updatesItem
.groupBy { it.update.mangaId }
.entries
.forEach { (mangaId, updates) ->
val manga = getManga.await(mangaId) ?: return@forEach
val source = sourceManager.get(manga.source) ?: return@forEach
val chapters = updates.mapNotNull { getChapter.await(it.update.chapterId)?.toDbChapter() }
downloadManager.deleteChapters(chapters, manga, source)
}
}
}