Use NoOpMatrixCallback when it's possible

This commit is contained in:
Benoit Marty 2020-02-05 12:05:12 +01:00
parent 47ee2a24a7
commit a3ec0e03a0
6 changed files with 19 additions and 15 deletions

View File

@ -26,6 +26,7 @@ import com.squareup.moshi.Types
import com.zhuinden.monarchy.Monarchy import com.zhuinden.monarchy.Monarchy
import dagger.Lazy import dagger.Lazy
import im.vector.matrix.android.api.MatrixCallback import im.vector.matrix.android.api.MatrixCallback
import im.vector.matrix.android.api.NoOpMatrixCallback
import im.vector.matrix.android.api.auth.data.Credentials import im.vector.matrix.android.api.auth.data.Credentials
import im.vector.matrix.android.api.failure.Failure import im.vector.matrix.android.api.failure.Failure
import im.vector.matrix.android.api.listeners.ProgressListener import im.vector.matrix.android.api.listeners.ProgressListener
@ -189,7 +190,7 @@ internal class DefaultCryptoService @Inject constructor(
this.callback = object : MatrixCallback<Unit> { this.callback = object : MatrixCallback<Unit> {
override fun onSuccess(data: Unit) { override fun onSuccess(data: Unit) {
// bg refresh of crypto device // bg refresh of crypto device
downloadKeys(listOf(credentials.userId), true, object : MatrixCallback<MXUsersDevicesMap<CryptoDeviceInfo>> {}) downloadKeys(listOf(credentials.userId), true, NoOpMatrixCallback())
callback.onSuccess(data) callback.onSuccess(data)
} }

View File

@ -17,6 +17,7 @@
package im.vector.matrix.android.internal.task package im.vector.matrix.android.internal.task
import im.vector.matrix.android.api.MatrixCallback import im.vector.matrix.android.api.MatrixCallback
import im.vector.matrix.android.api.NoOpMatrixCallback
import im.vector.matrix.android.api.util.Cancelable import im.vector.matrix.android.api.util.Cancelable
import java.util.UUID import java.util.UUID
@ -47,7 +48,7 @@ internal data class ConfigurableTask<PARAMS, RESULT>(
var callbackThread: TaskThread = TaskThread.MAIN, var callbackThread: TaskThread = TaskThread.MAIN,
var executionThread: TaskThread = TaskThread.IO, var executionThread: TaskThread = TaskThread.IO,
var retryCount: Int = 0, var retryCount: Int = 0,
var callback: MatrixCallback<RESULT> = object : MatrixCallback<RESULT> {} var callback: MatrixCallback<RESULT> = NoOpMatrixCallback()
) { ) {
fun build() = ConfigurableTask( fun build() = ConfigurableTask(

View File

@ -19,6 +19,7 @@ import com.airbnb.mvrx.*
import com.squareup.inject.assisted.Assisted import com.squareup.inject.assisted.Assisted
import com.squareup.inject.assisted.AssistedInject import com.squareup.inject.assisted.AssistedInject
import im.vector.matrix.android.api.MatrixCallback import im.vector.matrix.android.api.MatrixCallback
import im.vector.matrix.android.api.NoOpMatrixCallback
import im.vector.matrix.android.api.session.Session import im.vector.matrix.android.api.session.Session
import im.vector.matrix.android.api.session.crypto.keysbackup.KeysBackupService import im.vector.matrix.android.api.session.crypto.keysbackup.KeysBackupService
import im.vector.matrix.android.api.session.crypto.keysbackup.KeysBackupState import im.vector.matrix.android.api.session.crypto.keysbackup.KeysBackupState
@ -68,7 +69,7 @@ class KeysBackupSettingsViewModel @AssistedInject constructor(@Assisted initialS
} }
private fun init() { private fun init() {
keysBackupService.forceUsingLastVersion(object : MatrixCallback<Boolean> {}) keysBackupService.forceUsingLastVersion(NoOpMatrixCallback())
} }
private fun getKeysBackupTrust() = withState { state -> private fun getKeysBackupTrust() = withState { state ->

View File

@ -158,7 +158,7 @@ class RoomDetailViewModel @AssistedInject constructor(@Assisted initialState: Ro
observeUnreadState() observeUnreadState()
observeMyRoomMember() observeMyRoomMember()
room.getRoomSummaryLive() room.getRoomSummaryLive()
room.markAsRead(ReadService.MarkAsReadParams.READ_RECEIPT, object : MatrixCallback<Any> {}) room.markAsRead(ReadService.MarkAsReadParams.READ_RECEIPT, NoOpMatrixCallback())
room.rx(session).loadRoomMembersIfNeeded().subscribeLogError().disposeOnClear() room.rx(session).loadRoomMembersIfNeeded().subscribeLogError().disposeOnClear()
// Inform the SDK that the room is displayed // Inform the SDK that the room is displayed
session.onRoomDisplayed(initialState.roomId) session.onRoomDisplayed(initialState.roomId)
@ -225,7 +225,7 @@ class RoomDetailViewModel @AssistedInject constructor(@Assisted initialState: Ro
private fun stopTrackingUnreadMessages() { private fun stopTrackingUnreadMessages() {
if (trackUnreadMessages.getAndSet(false)) { if (trackUnreadMessages.getAndSet(false)) {
mostRecentDisplayedEvent?.root?.eventId?.also { mostRecentDisplayedEvent?.root?.eventId?.also {
room.setReadMarker(it, callback = object : MatrixCallback<Unit> {}) room.setReadMarker(it, callback = NoOpMatrixCallback())
} }
mostRecentDisplayedEvent = null mostRecentDisplayedEvent = null
} }
@ -525,7 +525,7 @@ class RoomDetailViewModel @AssistedInject constructor(@Assisted initialState: Ro
} }
private fun popDraft() { private fun popDraft() {
room.deleteDraft(object : MatrixCallback<Unit> {}) room.deleteDraft(NoOpMatrixCallback())
} }
private fun legacyRiotQuoteText(quotedText: String?, myText: String): String { private fun legacyRiotQuoteText(quotedText: String?, myText: String): String {
@ -631,11 +631,11 @@ class RoomDetailViewModel @AssistedInject constructor(@Assisted initialState: Ro
} }
private fun handleRejectInvite() { private fun handleRejectInvite() {
room.leave(null, object : MatrixCallback<Unit> {}) room.leave(null, NoOpMatrixCallback())
} }
private fun handleAcceptInvite() { private fun handleAcceptInvite() {
room.join(callback = object : MatrixCallback<Unit> {}) room.join(callback = NoOpMatrixCallback())
} }
private fun handleEditAction(action: RoomDetailAction.EnterEditMode) { private fun handleEditAction(action: RoomDetailAction.EnterEditMode) {
@ -808,14 +808,14 @@ class RoomDetailViewModel @AssistedInject constructor(@Assisted initialState: Ro
} }
} }
bufferedMostRecentDisplayedEvent.root.eventId?.let { eventId -> bufferedMostRecentDisplayedEvent.root.eventId?.let { eventId ->
room.setReadReceipt(eventId, callback = object : MatrixCallback<Unit> {}) room.setReadReceipt(eventId, callback = NoOpMatrixCallback())
} }
}) })
.disposeOnClear() .disposeOnClear()
} }
private fun handleMarkAllAsRead() { private fun handleMarkAllAsRead() {
room.markAsRead(ReadService.MarkAsReadParams.BOTH, object : MatrixCallback<Any> {}) room.markAsRead(ReadService.MarkAsReadParams.BOTH, NoOpMatrixCallback())
} }
private fun handleReportContent(action: RoomDetailAction.ReportContent) { private fun handleReportContent(action: RoomDetailAction.ReportContent) {

View File

@ -20,6 +20,7 @@ import com.airbnb.mvrx.FragmentViewModelContext
import com.airbnb.mvrx.MvRxViewModelFactory import com.airbnb.mvrx.MvRxViewModelFactory
import com.airbnb.mvrx.ViewModelContext import com.airbnb.mvrx.ViewModelContext
import im.vector.matrix.android.api.MatrixCallback import im.vector.matrix.android.api.MatrixCallback
import im.vector.matrix.android.api.NoOpMatrixCallback
import im.vector.matrix.android.api.session.Session import im.vector.matrix.android.api.session.Session
import im.vector.matrix.android.api.session.room.model.Membership import im.vector.matrix.android.api.session.room.model.Membership
import im.vector.matrix.android.api.session.room.model.RoomSummary import im.vector.matrix.android.api.session.room.model.RoomSummary
@ -182,7 +183,7 @@ class RoomListViewModel @Inject constructor(initialState: RoomListViewState,
?.filter { it.membership == Membership.JOIN } ?.filter { it.membership == Membership.JOIN }
?.map { it.roomId } ?.map { it.roomId }
?.toList() ?.toList()
?.let { session.markAllAsRead(it, object : MatrixCallback<Unit> {}) } ?.let { session.markAllAsRead(it, NoOpMatrixCallback()) }
} }
private fun handleChangeNotificationMode(action: RoomListAction.ChangeRoomNotificationState) { private fun handleChangeNotificationMode(action: RoomListAction.ChangeRoomNotificationState) {

View File

@ -20,7 +20,7 @@ import android.content.BroadcastReceiver
import android.content.Context import android.content.Context
import android.content.Intent import android.content.Intent
import androidx.core.app.RemoteInput import androidx.core.app.RemoteInput
import im.vector.matrix.android.api.MatrixCallback import im.vector.matrix.android.api.NoOpMatrixCallback
import im.vector.matrix.android.api.session.Session import im.vector.matrix.android.api.session.Session
import im.vector.matrix.android.api.session.room.Room import im.vector.matrix.android.api.session.room.Room
import im.vector.matrix.android.api.session.room.read.ReadService import im.vector.matrix.android.api.session.room.read.ReadService
@ -75,21 +75,21 @@ class NotificationBroadcastReceiver : BroadcastReceiver() {
private fun handleJoinRoom(roomId: String) { private fun handleJoinRoom(roomId: String) {
activeSessionHolder.getSafeActiveSession()?.let { session -> activeSessionHolder.getSafeActiveSession()?.let { session ->
session.getRoom(roomId) session.getRoom(roomId)
?.join(callback = object : MatrixCallback<Unit> {}) ?.join(callback = NoOpMatrixCallback())
} }
} }
private fun handleRejectRoom(roomId: String) { private fun handleRejectRoom(roomId: String) {
activeSessionHolder.getSafeActiveSession()?.let { session -> activeSessionHolder.getSafeActiveSession()?.let { session ->
session.getRoom(roomId) session.getRoom(roomId)
?.leave(callback = object : MatrixCallback<Unit> {}) ?.leave(callback = NoOpMatrixCallback())
} }
} }
private fun handleMarkAsRead(roomId: String) { private fun handleMarkAsRead(roomId: String) {
activeSessionHolder.getActiveSession().let { session -> activeSessionHolder.getActiveSession().let { session ->
session.getRoom(roomId) session.getRoom(roomId)
?.markAsRead(ReadService.MarkAsReadParams.READ_RECEIPT, object : MatrixCallback<Unit> {}) ?.markAsRead(ReadService.MarkAsReadParams.READ_RECEIPT, NoOpMatrixCallback())
} }
} }