migrate to RxJava3 (#2146)

* migrate to RxJava3

* remove unused import
This commit is contained in:
Konrad Pozniak 2021-05-16 19:53:27 +02:00 committed by GitHub
commit 40b24cd242
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
59 changed files with 200 additions and 197 deletions

View file

@ -33,9 +33,9 @@ import com.keylesspalace.tusky.network.MastodonApi
import com.keylesspalace.tusky.service.ServiceClient
import com.keylesspalace.tusky.service.TootToSend
import com.keylesspalace.tusky.util.*
import io.reactivex.Observable.just
import io.reactivex.disposables.Disposable
import io.reactivex.rxkotlin.Singles
import io.reactivex.rxjava3.core.Observable
import io.reactivex.rxjava3.core.Single
import io.reactivex.rxjava3.disposables.Disposable
import java.util.*
import javax.inject.Inject
@ -89,7 +89,7 @@ class ComposeViewModel @Inject constructor(
init {
Singles.zip(api.getCustomEmojis(), api.getInstance()) { emojis, instance ->
Single.zip(api.getCustomEmojis(), api.getInstance(), { emojis, instance ->
InstanceEntity(
instance = accountManager.activeAccount?.domain!!,
emojiList = emojis,
@ -98,13 +98,13 @@ class ComposeViewModel @Inject constructor(
maxPollOptionLength = instance.pollLimits?.maxOptionChars,
version = instance.version
)
}
})
.doOnSuccess {
db.instanceDao().insertOrReplace(it)
}
.onErrorResumeNext(
db.instanceDao().loadMetadataForInstance(accountManager.activeAccount?.domain!!)
)
.onErrorResumeNext {
db.instanceDao().loadMetadataForInstance(accountManager.activeAccount?.domain!!)
}
.subscribe({ instanceEntity ->
emoji.postValue(instanceEntity.emojiList)
instance.postValue(instanceEntity)
@ -257,7 +257,7 @@ class ComposeViewModel @Inject constructor(
val deletionObservable = if (isEditingScheduledToot) {
api.deleteScheduledStatus(scheduledTootId.toString()).toObservable().map { }
} else {
just(Unit)
Observable.just(Unit)
}.toLiveData()
val sendObservable = media

View file

@ -29,9 +29,9 @@ import com.keylesspalace.tusky.entity.Attachment
import com.keylesspalace.tusky.network.MastodonApi
import com.keylesspalace.tusky.network.ProgressRequestBody
import com.keylesspalace.tusky.util.*
import io.reactivex.Observable
import io.reactivex.Single
import io.reactivex.schedulers.Schedulers
import io.reactivex.rxjava3.core.Observable
import io.reactivex.rxjava3.core.Single
import io.reactivex.rxjava3.schedulers.Schedulers
import okhttp3.MediaType.Companion.toMediaTypeOrNull
import okhttp3.MultipartBody
import java.io.File