Move all DownloadService.stop calls to Downloader (#9146)

Downloader.stop is now the sole responsible for stopping the
DownloadService. This will help cleanly removing
DownloadService.stop when migrating to coroutines.
This commit is contained in:
Two-Ai 2023-02-25 15:40:22 -05:00 committed by GitHub
parent 4efca04765
commit 0505906e7a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 11 additions and 7 deletions

View file

@ -67,7 +67,7 @@ class DownloadManager(
*/
fun pauseDownloads() {
downloader.pause()
DownloadService.stop(context)
downloader.stop()
}
/**
@ -75,7 +75,7 @@ class DownloadManager(
*/
fun clearQueue() {
downloader.clearQueue()
DownloadService.stop(context)
downloader.stop()
}
/**
@ -115,8 +115,8 @@ class DownloadManager(
val wasRunning = downloader.isRunning
if (downloads.isEmpty()) {
DownloadService.stop(context)
queue.clear()
downloader.clearQueue()
downloader.stop()
return
}
@ -275,7 +275,6 @@ class DownloadManager(
if (wasRunning) {
if (queue.isEmpty()) {
DownloadService.stop(context)
downloader.stop()
} else if (queue.isNotEmpty()) {
downloader.start()

View file

@ -167,6 +167,11 @@ class Downloader(
}
isPaused = false
// Prevent recursion when DownloadService.onDestroy() calls downloader.stop()
if (DownloadService.isRunning.value) {
DownloadService.stop(context)
}
}
/**
@ -217,9 +222,9 @@ class Downloader(
completeDownload(it)
},
{ error ->
DownloadService.stop(context)
logcat(LogPriority.ERROR, error)
notifier.onError(error.message)
stop()
},
)
}
@ -634,7 +639,7 @@ class Downloader(
queue.remove(download)
}
if (areAllDownloadsFinished()) {
DownloadService.stop(context)
stop()
}
}