cleanup drafts when user logs out (#2067)
* cleanup drafts when user logs out * delete unused method * remove unneeded sorting from loadDraftsSingle
This commit is contained in:
parent
9580870445
commit
4d856365f9
3 changed files with 19 additions and 0 deletions
|
|
@ -29,6 +29,7 @@ import com.keylesspalace.tusky.entity.NewPoll
|
|||
import com.keylesspalace.tusky.entity.Status
|
||||
import com.keylesspalace.tusky.util.IOUtils
|
||||
import io.reactivex.Completable
|
||||
import io.reactivex.Observable
|
||||
import io.reactivex.Single
|
||||
import io.reactivex.schedulers.Schedulers
|
||||
import java.io.File
|
||||
|
|
@ -126,6 +127,15 @@ class DraftHelper @Inject constructor(
|
|||
.andThen(draftDao.delete(draft.id))
|
||||
}
|
||||
|
||||
fun deleteAllDraftsAndAttachmentsForAccount(accountId: Long) {
|
||||
draftDao.loadDraftsSingle(accountId)
|
||||
.flatMapObservable { Observable.fromIterable(it) }
|
||||
.flatMapCompletable { draft ->
|
||||
deleteDraftAndAttachments(draft)
|
||||
}.subscribeOn(Schedulers.io())
|
||||
.subscribe()
|
||||
}
|
||||
|
||||
fun deleteAttachments(draft: DraftEntity): Completable {
|
||||
return Completable.fromCallable {
|
||||
draft.attachments.forEach { attachment ->
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue