pending room : use RoomPreview internally
This commit is contained in:
@@ -10,14 +10,13 @@ package io.element.android.libraries.matrix.impl.room
|
||||
import io.element.android.libraries.matrix.api.core.RoomId
|
||||
import io.element.android.libraries.matrix.api.core.SessionId
|
||||
import io.element.android.libraries.matrix.api.room.PendingRoom
|
||||
import org.matrix.rustcomponents.sdk.Room
|
||||
import org.matrix.rustcomponents.sdk.RoomPreview
|
||||
|
||||
class RustPendingRoom(
|
||||
override val sessionId: SessionId,
|
||||
private val inner: Room,
|
||||
override val roomId: RoomId,
|
||||
private val inner: RoomPreview,
|
||||
) : PendingRoom {
|
||||
override val roomId = RoomId(inner.id())
|
||||
|
||||
override suspend fun leave(): Result<Unit> = runCatching {
|
||||
inner.leave()
|
||||
}
|
||||
|
||||
@@ -139,14 +139,14 @@ class RustRoomFactory(
|
||||
return@withContext null
|
||||
}
|
||||
val innerRoom = try {
|
||||
// TODO use new method when available, for now it'll fail for knocked rooms
|
||||
roomListItem.invitedRoom()
|
||||
roomListItem.previewRoom(via = emptyList())
|
||||
} catch (e: RoomListException) {
|
||||
Timber.e(e, "Failed to get pending room for $roomId")
|
||||
return@withContext null
|
||||
}
|
||||
RustPendingRoom(
|
||||
sessionId = sessionId,
|
||||
roomId = roomId,
|
||||
inner = innerRoom,
|
||||
)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user