Loading presentation/src/main/java/com/moez/QKSMS/feature/blocking/numbers/BlockedNumbersPresenter.kt +20 −13 Original line number Diff line number Diff line Loading @@ -24,7 +24,9 @@ import com.moez.QKSMS.repository.BlockingRepository import com.moez.QKSMS.repository.ConversationRepository import com.uber.autodispose.android.lifecycle.scope import com.uber.autodispose.autoDisposable import io.reactivex.Completable import io.reactivex.schedulers.Schedulers import timber.log.Timber import javax.inject.Inject class BlockedNumbersPresenter @Inject constructor( Loading @@ -39,24 +41,29 @@ class BlockedNumbersPresenter @Inject constructor( super.bindIntents(view) view.unblockAddress() .doOnNext { id -> .flatMapCompletable { id -> Completable.fromAction { blockingRepo.getBlockedNumber(id)?.address ?.let(conversationRepo::getThreadId) ?.let { threadId -> markUnblocked.execute(listOf(threadId)) } blockingRepo.unblockNumber(id) } .doOnNext(blockingRepo::unblockNumber) .subscribeOn(Schedulers.io()) } .autoDisposable(view.scope()) .subscribe() .subscribe({ }, Timber::w) view.addAddress() .autoDisposable(view.scope()) .subscribe { view.showAddDialog() } view.saveAddress() .flatMapCompletable { address -> Completable.fromAction { blockingRepo.blockNumber(address) } .subscribeOn(Schedulers.io()) } .autoDisposable(view.scope()) .subscribe { address -> blockingRepo.blockNumber(address) } .subscribe({ }, Timber::w) } } Loading
presentation/src/main/java/com/moez/QKSMS/feature/blocking/numbers/BlockedNumbersPresenter.kt +20 −13 Original line number Diff line number Diff line Loading @@ -24,7 +24,9 @@ import com.moez.QKSMS.repository.BlockingRepository import com.moez.QKSMS.repository.ConversationRepository import com.uber.autodispose.android.lifecycle.scope import com.uber.autodispose.autoDisposable import io.reactivex.Completable import io.reactivex.schedulers.Schedulers import timber.log.Timber import javax.inject.Inject class BlockedNumbersPresenter @Inject constructor( Loading @@ -39,24 +41,29 @@ class BlockedNumbersPresenter @Inject constructor( super.bindIntents(view) view.unblockAddress() .doOnNext { id -> .flatMapCompletable { id -> Completable.fromAction { blockingRepo.getBlockedNumber(id)?.address ?.let(conversationRepo::getThreadId) ?.let { threadId -> markUnblocked.execute(listOf(threadId)) } blockingRepo.unblockNumber(id) } .doOnNext(blockingRepo::unblockNumber) .subscribeOn(Schedulers.io()) } .autoDisposable(view.scope()) .subscribe() .subscribe({ }, Timber::w) view.addAddress() .autoDisposable(view.scope()) .subscribe { view.showAddDialog() } view.saveAddress() .flatMapCompletable { address -> Completable.fromAction { blockingRepo.blockNumber(address) } .subscribeOn(Schedulers.io()) } .autoDisposable(view.scope()) .subscribe { address -> blockingRepo.blockNumber(address) } .subscribe({ }, Timber::w) } }