* Separate cache dir from download dir
* Move downloader logic outside of caching/image download logic
* remove unnecessary method duplication
* moved download logic inside download provider
* optimize and handle partial downloads
* made code review changes
* Add immediate updates to download queue manager for updates that always needs to be delivered
* Update server/src/main/kotlin/suwayomi/tachidesk/manga/impl/download/DownloadManager.kt
Co-authored-by: Mitchell Syer <Mitchellptbo@gmail.com>
* Revert change to make sure that data in status sent to client are actual
* Reduce number of immediate updates to clients
Co-authored-by: Mitchell Syer <Mitchellptbo@gmail.com>
* Downloader rewrite
- Rewrite downloader to use coroutines instead of a thread
- Remove unused Page functions
- Add page progress
- Add ProgressResponseBody
- Add support for canceling a download in the middle of downloading
- Fix clear download queue
* Minor fix
* Minor improvements
- notifyAllClients now launches in another thread and only sends new data every second
- Better handling of download queue checker in step()
- Minor improvements and fixes
* Reorder downloads
* Download in parallel by source
* Remove TODO
* Add POST /downloads endpoint for creating multiple
* Fix review notes
* Add chapter id to API endpoints
* Rewrite batch chapter download to use chapter id instead of mangaId+chapterIndex combination
* Change EnqueueInput format to be more futureproof
* Change endpoint path
* Change endpoint path