Update code so it compiles
This commit is contained in:
parent
417a418a38
commit
b73ff7aa45
9 changed files with 41 additions and 55 deletions
|
|
@ -31,7 +31,7 @@ interface MatrixClient {
|
||||||
fun mediaResolver(): MediaResolver
|
fun mediaResolver(): MediaResolver
|
||||||
suspend fun logout()
|
suspend fun logout()
|
||||||
suspend fun loadUserDisplayName(): Result<String>
|
suspend fun loadUserDisplayName(): Result<String>
|
||||||
suspend fun loadUserAvatarURLString(): Result<String>
|
suspend fun loadUserAvatarURLString(): Result<String?>
|
||||||
suspend fun loadMediaContent(url: String): Result<ByteArray>
|
suspend fun loadMediaContent(url: String): Result<ByteArray>
|
||||||
suspend fun loadMediaThumbnail(
|
suspend fun loadMediaThumbnail(
|
||||||
url: String,
|
url: String,
|
||||||
|
|
|
||||||
|
|
@ -33,9 +33,9 @@ import kotlinx.coroutines.withContext
|
||||||
import org.matrix.rustcomponents.sdk.Client
|
import org.matrix.rustcomponents.sdk.Client
|
||||||
import org.matrix.rustcomponents.sdk.ClientDelegate
|
import org.matrix.rustcomponents.sdk.ClientDelegate
|
||||||
import org.matrix.rustcomponents.sdk.RequiredState
|
import org.matrix.rustcomponents.sdk.RequiredState
|
||||||
|
import org.matrix.rustcomponents.sdk.SlidingSyncListBuilder
|
||||||
import org.matrix.rustcomponents.sdk.SlidingSyncMode
|
import org.matrix.rustcomponents.sdk.SlidingSyncMode
|
||||||
import org.matrix.rustcomponents.sdk.SlidingSyncRequestListFilters
|
import org.matrix.rustcomponents.sdk.SlidingSyncRequestListFilters
|
||||||
import org.matrix.rustcomponents.sdk.SlidingSyncViewBuilder
|
|
||||||
import org.matrix.rustcomponents.sdk.TaskHandle
|
import org.matrix.rustcomponents.sdk.TaskHandle
|
||||||
import org.matrix.rustcomponents.sdk.mediaSourceFromUrl
|
import org.matrix.rustcomponents.sdk.mediaSourceFromUrl
|
||||||
import org.matrix.rustcomponents.sdk.use
|
import org.matrix.rustcomponents.sdk.use
|
||||||
|
|
@ -55,15 +55,8 @@ class RustMatrixClient constructor(
|
||||||
|
|
||||||
private val clientDelegate = object : ClientDelegate {
|
private val clientDelegate = object : ClientDelegate {
|
||||||
override fun didReceiveAuthError(isSoftLogout: Boolean) {
|
override fun didReceiveAuthError(isSoftLogout: Boolean) {
|
||||||
Timber.v("didReceiveAuthError()")
|
//TODO handle this
|
||||||
}
|
Timber.v("didReceiveAuthError(isSoftLogout=$isSoftLogout)")
|
||||||
|
|
||||||
override fun didReceiveSyncUpdate() {
|
|
||||||
Timber.v("didReceiveSyncUpdate()")
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun didUpdateRestoreToken() {
|
|
||||||
Timber.v("didUpdateRestoreToken()")
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -82,7 +75,7 @@ class RustMatrixClient constructor(
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
private val visibleRoomsView = SlidingSyncViewBuilder()
|
private val visibleRoomsSlidingSyncList = SlidingSyncListBuilder()
|
||||||
.timelineLimit(limit = 1u)
|
.timelineLimit(limit = 1u)
|
||||||
.requiredState(
|
.requiredState(
|
||||||
requiredState = listOf(
|
requiredState = listOf(
|
||||||
|
|
@ -104,7 +97,7 @@ class RustMatrixClient constructor(
|
||||||
.homeserver("https://slidingsync.lab.matrix.org")
|
.homeserver("https://slidingsync.lab.matrix.org")
|
||||||
.withCommonExtensions()
|
.withCommonExtensions()
|
||||||
.coldCache("ElementX")
|
.coldCache("ElementX")
|
||||||
.addView(visibleRoomsView)
|
.addList(visibleRoomsSlidingSyncList)
|
||||||
.use {
|
.use {
|
||||||
it.build()
|
it.build()
|
||||||
}
|
}
|
||||||
|
|
@ -114,7 +107,7 @@ class RustMatrixClient constructor(
|
||||||
RustRoomSummaryDataSource(
|
RustRoomSummaryDataSource(
|
||||||
slidingSyncObserverProxy.updateSummaryFlow,
|
slidingSyncObserverProxy.updateSummaryFlow,
|
||||||
slidingSync,
|
slidingSync,
|
||||||
visibleRoomsView,
|
visibleRoomsSlidingSyncList,
|
||||||
dispatchers,
|
dispatchers,
|
||||||
::onRestartSync
|
::onRestartSync
|
||||||
)
|
)
|
||||||
|
|
@ -153,7 +146,6 @@ class RustMatrixClient constructor(
|
||||||
override fun mediaResolver(): MediaResolver = mediaResolver
|
override fun mediaResolver(): MediaResolver = mediaResolver
|
||||||
|
|
||||||
override fun startSync() {
|
override fun startSync() {
|
||||||
if (client.isSoftLogout()) return
|
|
||||||
if (isSyncing.compareAndSet(false, true)) {
|
if (isSyncing.compareAndSet(false, true)) {
|
||||||
slidingSyncObserverToken = slidingSync.sync()
|
slidingSyncObserverToken = slidingSync.sync()
|
||||||
}
|
}
|
||||||
|
|
@ -170,7 +162,7 @@ class RustMatrixClient constructor(
|
||||||
slidingSync.setObserver(null)
|
slidingSync.setObserver(null)
|
||||||
rustRoomSummaryDataSource.close()
|
rustRoomSummaryDataSource.close()
|
||||||
client.setDelegate(null)
|
client.setDelegate(null)
|
||||||
visibleRoomsView.destroy()
|
visibleRoomsSlidingSyncList.destroy()
|
||||||
slidingSync.destroy()
|
slidingSync.destroy()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -192,7 +184,7 @@ class RustMatrixClient constructor(
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
override suspend fun loadUserAvatarURLString(): Result<String> = withContext(dispatchers.io) {
|
override suspend fun loadUserAvatarURLString(): Result<String?> = withContext(dispatchers.io) {
|
||||||
runCatching {
|
runCatching {
|
||||||
client.avatarUrl()
|
client.avatarUrl()
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -125,7 +125,6 @@ private fun SessionData.toSession() = Session(
|
||||||
userId = userId,
|
userId = userId,
|
||||||
deviceId = deviceId,
|
deviceId = deviceId,
|
||||||
homeserverUrl = homeserverUrl,
|
homeserverUrl = homeserverUrl,
|
||||||
isSoftLogout = isSoftLogout,
|
|
||||||
slidingSyncProxy = slidingSyncProxy,
|
slidingSyncProxy = slidingSyncProxy,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
@ -135,6 +134,5 @@ private fun Session.toSessionData() = SessionData(
|
||||||
accessToken = accessToken,
|
accessToken = accessToken,
|
||||||
refreshToken = refreshToken,
|
refreshToken = refreshToken,
|
||||||
homeserverUrl = homeserverUrl,
|
homeserverUrl = homeserverUrl,
|
||||||
isSoftLogout = isSoftLogout,
|
|
||||||
slidingSyncProxy = slidingSyncProxy,
|
slidingSyncProxy = slidingSyncProxy,
|
||||||
)
|
)
|
||||||
|
|
|
||||||
|
|
@ -33,9 +33,9 @@ import kotlinx.coroutines.launch
|
||||||
import kotlinx.coroutines.withContext
|
import kotlinx.coroutines.withContext
|
||||||
import org.matrix.rustcomponents.sdk.RoomListEntry
|
import org.matrix.rustcomponents.sdk.RoomListEntry
|
||||||
import org.matrix.rustcomponents.sdk.SlidingSync
|
import org.matrix.rustcomponents.sdk.SlidingSync
|
||||||
|
import org.matrix.rustcomponents.sdk.SlidingSyncList
|
||||||
|
import org.matrix.rustcomponents.sdk.SlidingSyncListRoomsListDiff
|
||||||
import org.matrix.rustcomponents.sdk.SlidingSyncState
|
import org.matrix.rustcomponents.sdk.SlidingSyncState
|
||||||
import org.matrix.rustcomponents.sdk.SlidingSyncView
|
|
||||||
import org.matrix.rustcomponents.sdk.SlidingSyncViewRoomsListDiff
|
|
||||||
import org.matrix.rustcomponents.sdk.UpdateSummary
|
import org.matrix.rustcomponents.sdk.UpdateSummary
|
||||||
import timber.log.Timber
|
import timber.log.Timber
|
||||||
import java.io.Closeable
|
import java.io.Closeable
|
||||||
|
|
@ -44,7 +44,7 @@ import java.util.UUID
|
||||||
internal class RustRoomSummaryDataSource(
|
internal class RustRoomSummaryDataSource(
|
||||||
private val slidingSyncUpdateFlow: Flow<UpdateSummary>,
|
private val slidingSyncUpdateFlow: Flow<UpdateSummary>,
|
||||||
private val slidingSync: SlidingSync,
|
private val slidingSync: SlidingSync,
|
||||||
private val slidingSyncView: SlidingSyncView,
|
private val slidingSyncList: SlidingSyncList,
|
||||||
private val coroutineDispatchers: CoroutineDispatchers,
|
private val coroutineDispatchers: CoroutineDispatchers,
|
||||||
private val onRestartSync: () -> Unit,
|
private val onRestartSync: () -> Unit,
|
||||||
private val roomSummaryDetailsFactory: RoomSummaryDetailsFactory = RoomSummaryDetailsFactory(),
|
private val roomSummaryDetailsFactory: RoomSummaryDetailsFactory = RoomSummaryDetailsFactory(),
|
||||||
|
|
@ -59,7 +59,7 @@ internal class RustRoomSummaryDataSource(
|
||||||
coroutineScope.launch {
|
coroutineScope.launch {
|
||||||
updateRoomSummaries {
|
updateRoomSummaries {
|
||||||
addAll(
|
addAll(
|
||||||
slidingSyncView.currentRoomsList().map(::buildSummaryForRoomListEntry)
|
slidingSyncList.currentRoomsList().map(::buildSummaryForRoomListEntry)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -69,7 +69,7 @@ internal class RustRoomSummaryDataSource(
|
||||||
didReceiveSyncUpdate(it)
|
didReceiveSyncUpdate(it)
|
||||||
}.launchIn(coroutineScope)
|
}.launchIn(coroutineScope)
|
||||||
|
|
||||||
slidingSyncView.roomListDiff(coroutineScope)
|
slidingSyncList.roomListDiff(coroutineScope)
|
||||||
.onEach { diffs ->
|
.onEach { diffs ->
|
||||||
updateRoomSummaries {
|
updateRoomSummaries {
|
||||||
applyDiff(diffs)
|
applyDiff(diffs)
|
||||||
|
|
@ -77,7 +77,7 @@ internal class RustRoomSummaryDataSource(
|
||||||
}
|
}
|
||||||
.launchIn(coroutineScope)
|
.launchIn(coroutineScope)
|
||||||
|
|
||||||
slidingSyncView.state(coroutineScope)
|
slidingSyncList.state(coroutineScope)
|
||||||
.onEach { slidingSyncState ->
|
.onEach { slidingSyncState ->
|
||||||
Timber.v("New sliding sync state: $slidingSyncState")
|
Timber.v("New sliding sync state: $slidingSyncState")
|
||||||
state.value = slidingSyncState
|
state.value = slidingSyncState
|
||||||
|
|
@ -95,7 +95,7 @@ internal class RustRoomSummaryDataSource(
|
||||||
|
|
||||||
override fun setSlidingSyncRange(range: IntRange) {
|
override fun setSlidingSyncRange(range: IntRange) {
|
||||||
Timber.v("setVisibleRange=$range")
|
Timber.v("setVisibleRange=$range")
|
||||||
slidingSyncView.setRange(range.first.toUInt(), range.last.toUInt())
|
slidingSyncList.setRange(range.first.toUInt(), range.last.toUInt())
|
||||||
onRestartSync()
|
onRestartSync()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -116,7 +116,7 @@ internal class RustRoomSummaryDataSource(
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun MutableList<RoomSummary>.applyDiff(diff: SlidingSyncViewRoomsListDiff) {
|
private fun MutableList<RoomSummary>.applyDiff(diff: SlidingSyncListRoomsListDiff) {
|
||||||
fun MutableList<RoomSummary>.fillUntil(untilIndex: Int) {
|
fun MutableList<RoomSummary>.fillUntil(untilIndex: Int) {
|
||||||
repeat((size - 1 until untilIndex).count()) {
|
repeat((size - 1 until untilIndex).count()) {
|
||||||
add(buildEmptyRoomSummary())
|
add(buildEmptyRoomSummary())
|
||||||
|
|
@ -124,43 +124,43 @@ internal class RustRoomSummaryDataSource(
|
||||||
}
|
}
|
||||||
Timber.v("ApplyDiff: $diff for list with size: $size")
|
Timber.v("ApplyDiff: $diff for list with size: $size")
|
||||||
when (diff) {
|
when (diff) {
|
||||||
is SlidingSyncViewRoomsListDiff.Append -> {
|
is SlidingSyncListRoomsListDiff.Append -> {
|
||||||
val roomSummaries = diff.values.map {
|
val roomSummaries = diff.values.map {
|
||||||
buildSummaryForRoomListEntry(it)
|
buildSummaryForRoomListEntry(it)
|
||||||
}
|
}
|
||||||
addAll(roomSummaries)
|
addAll(roomSummaries)
|
||||||
}
|
}
|
||||||
is SlidingSyncViewRoomsListDiff.PushBack -> {
|
is SlidingSyncListRoomsListDiff.PushBack -> {
|
||||||
val roomSummary = buildSummaryForRoomListEntry(diff.value)
|
val roomSummary = buildSummaryForRoomListEntry(diff.value)
|
||||||
add(roomSummary)
|
add(roomSummary)
|
||||||
}
|
}
|
||||||
is SlidingSyncViewRoomsListDiff.PushFront -> {
|
is SlidingSyncListRoomsListDiff.PushFront -> {
|
||||||
val roomSummary = buildSummaryForRoomListEntry(diff.value)
|
val roomSummary = buildSummaryForRoomListEntry(diff.value)
|
||||||
add(0, roomSummary)
|
add(0, roomSummary)
|
||||||
}
|
}
|
||||||
is SlidingSyncViewRoomsListDiff.Set -> {
|
is SlidingSyncListRoomsListDiff.Set -> {
|
||||||
fillUntil(diff.index.toInt())
|
fillUntil(diff.index.toInt())
|
||||||
val roomSummary = buildSummaryForRoomListEntry(diff.value)
|
val roomSummary = buildSummaryForRoomListEntry(diff.value)
|
||||||
set(diff.index.toInt(), roomSummary)
|
set(diff.index.toInt(), roomSummary)
|
||||||
}
|
}
|
||||||
is SlidingSyncViewRoomsListDiff.Insert -> {
|
is SlidingSyncListRoomsListDiff.Insert -> {
|
||||||
val roomSummary = buildSummaryForRoomListEntry(diff.value)
|
val roomSummary = buildSummaryForRoomListEntry(diff.value)
|
||||||
add(diff.index.toInt(), roomSummary)
|
add(diff.index.toInt(), roomSummary)
|
||||||
}
|
}
|
||||||
is SlidingSyncViewRoomsListDiff.Remove -> {
|
is SlidingSyncListRoomsListDiff.Remove -> {
|
||||||
removeAt(diff.index.toInt())
|
removeAt(diff.index.toInt())
|
||||||
}
|
}
|
||||||
is SlidingSyncViewRoomsListDiff.Reset -> {
|
is SlidingSyncListRoomsListDiff.Reset -> {
|
||||||
clear()
|
clear()
|
||||||
addAll(diff.values.map { buildSummaryForRoomListEntry(it) })
|
addAll(diff.values.map { buildSummaryForRoomListEntry(it) })
|
||||||
}
|
}
|
||||||
SlidingSyncViewRoomsListDiff.PopBack -> {
|
SlidingSyncListRoomsListDiff.PopBack -> {
|
||||||
removeFirstOrNull()
|
removeFirstOrNull()
|
||||||
}
|
}
|
||||||
SlidingSyncViewRoomsListDiff.PopFront -> {
|
SlidingSyncListRoomsListDiff.PopFront -> {
|
||||||
removeLastOrNull()
|
removeLastOrNull()
|
||||||
}
|
}
|
||||||
SlidingSyncViewRoomsListDiff.Clear -> {
|
SlidingSyncListRoomsListDiff.Clear -> {
|
||||||
clear()
|
clear()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -20,17 +20,17 @@ import io.element.android.libraries.matrix.impl.util.mxCallbackFlow
|
||||||
import kotlinx.coroutines.CoroutineScope
|
import kotlinx.coroutines.CoroutineScope
|
||||||
import kotlinx.coroutines.flow.Flow
|
import kotlinx.coroutines.flow.Flow
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
|
import org.matrix.rustcomponents.sdk.SlidingSyncList
|
||||||
|
import org.matrix.rustcomponents.sdk.SlidingSyncListRoomListObserver
|
||||||
|
import org.matrix.rustcomponents.sdk.SlidingSyncListRoomsCountObserver
|
||||||
|
import org.matrix.rustcomponents.sdk.SlidingSyncListRoomsListDiff
|
||||||
|
import org.matrix.rustcomponents.sdk.SlidingSyncListStateObserver
|
||||||
import org.matrix.rustcomponents.sdk.SlidingSyncState
|
import org.matrix.rustcomponents.sdk.SlidingSyncState
|
||||||
import org.matrix.rustcomponents.sdk.SlidingSyncView
|
|
||||||
import org.matrix.rustcomponents.sdk.SlidingSyncViewRoomListObserver
|
|
||||||
import org.matrix.rustcomponents.sdk.SlidingSyncViewRoomsCountObserver
|
|
||||||
import org.matrix.rustcomponents.sdk.SlidingSyncViewRoomsListDiff
|
|
||||||
import org.matrix.rustcomponents.sdk.SlidingSyncViewStateObserver
|
|
||||||
|
|
||||||
fun SlidingSyncView.roomListDiff(scope: CoroutineScope): Flow<SlidingSyncViewRoomsListDiff> =
|
fun SlidingSyncList.roomListDiff(scope: CoroutineScope): Flow<SlidingSyncListRoomsListDiff> =
|
||||||
mxCallbackFlow {
|
mxCallbackFlow {
|
||||||
val observer = object : SlidingSyncViewRoomListObserver {
|
val observer = object : SlidingSyncListRoomListObserver {
|
||||||
override fun didReceiveUpdate(diff: SlidingSyncViewRoomsListDiff) {
|
override fun didReceiveUpdate(diff: SlidingSyncListRoomsListDiff) {
|
||||||
scope.launch {
|
scope.launch {
|
||||||
send(diff)
|
send(diff)
|
||||||
}
|
}
|
||||||
|
|
@ -39,8 +39,8 @@ fun SlidingSyncView.roomListDiff(scope: CoroutineScope): Flow<SlidingSyncViewRoo
|
||||||
observeRoomList(observer)
|
observeRoomList(observer)
|
||||||
}
|
}
|
||||||
|
|
||||||
fun SlidingSyncView.state(scope: CoroutineScope): Flow<SlidingSyncState> = mxCallbackFlow {
|
fun SlidingSyncList.state(scope: CoroutineScope): Flow<SlidingSyncState> = mxCallbackFlow {
|
||||||
val observer = object : SlidingSyncViewStateObserver {
|
val observer = object : SlidingSyncListStateObserver {
|
||||||
override fun didReceiveUpdate(newState: SlidingSyncState) {
|
override fun didReceiveUpdate(newState: SlidingSyncState) {
|
||||||
scope.launch {
|
scope.launch {
|
||||||
send(newState)
|
send(newState)
|
||||||
|
|
@ -50,8 +50,8 @@ fun SlidingSyncView.state(scope: CoroutineScope): Flow<SlidingSyncState> = mxCal
|
||||||
observeState(observer)
|
observeState(observer)
|
||||||
}
|
}
|
||||||
|
|
||||||
fun SlidingSyncView.roomsCount(scope: CoroutineScope): Flow<UInt> = mxCallbackFlow {
|
fun SlidingSyncList.roomsCount(scope: CoroutineScope): Flow<UInt> = mxCallbackFlow {
|
||||||
val observer = object : SlidingSyncViewRoomsCountObserver {
|
val observer = object : SlidingSyncListRoomsCountObserver {
|
||||||
override fun didReceiveUpdate(count: UInt) {
|
override fun didReceiveUpdate(count: UInt) {
|
||||||
scope.launch {
|
scope.launch {
|
||||||
send(count)
|
send(count)
|
||||||
|
|
@ -61,7 +61,7 @@ class FakeMatrixClient(
|
||||||
return userDisplayName
|
return userDisplayName
|
||||||
}
|
}
|
||||||
|
|
||||||
override suspend fun loadUserAvatarURLString(): Result<String> {
|
override suspend fun loadUserAvatarURLString(): Result<String?> {
|
||||||
return userAvatarURLString
|
return userAvatarURLString
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -22,6 +22,5 @@ data class SessionData(
|
||||||
val accessToken: String,
|
val accessToken: String,
|
||||||
val refreshToken: String?,
|
val refreshToken: String?,
|
||||||
val homeserverUrl: String,
|
val homeserverUrl: String,
|
||||||
val isSoftLogout: Boolean,
|
|
||||||
val slidingSyncProxy: String?
|
val slidingSyncProxy: String?
|
||||||
)
|
)
|
||||||
|
|
|
||||||
|
|
@ -25,7 +25,6 @@ internal fun SessionData.toDbModel(): io.element.android.libraries.matrix.sessio
|
||||||
accessToken = accessToken,
|
accessToken = accessToken,
|
||||||
refreshToken = refreshToken,
|
refreshToken = refreshToken,
|
||||||
homeserverUrl = homeserverUrl,
|
homeserverUrl = homeserverUrl,
|
||||||
isSoftLogout = isSoftLogout,
|
|
||||||
slidingSyncProxy = slidingSyncProxy,
|
slidingSyncProxy = slidingSyncProxy,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
@ -37,7 +36,6 @@ internal fun io.element.android.libraries.matrix.session.SessionData.toApiModel(
|
||||||
accessToken = accessToken,
|
accessToken = accessToken,
|
||||||
refreshToken = refreshToken,
|
refreshToken = refreshToken,
|
||||||
homeserverUrl = homeserverUrl,
|
homeserverUrl = homeserverUrl,
|
||||||
isSoftLogout = isSoftLogout,
|
|
||||||
slidingSyncProxy = slidingSyncProxy,
|
slidingSyncProxy = slidingSyncProxy,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,6 @@ CREATE TABLE SessionData (
|
||||||
accessToken TEXT NOT NULL,
|
accessToken TEXT NOT NULL,
|
||||||
refreshToken TEXT,
|
refreshToken TEXT,
|
||||||
homeserverUrl TEXT NOT NULL,
|
homeserverUrl TEXT NOT NULL,
|
||||||
isSoftLogout INTEGER AS Boolean NOT NULL DEFAULT 0,
|
|
||||||
slidingSyncProxy TEXT
|
slidingSyncProxy TEXT
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
@ -15,7 +14,7 @@ selectByUserId:
|
||||||
SELECT * FROM SessionData WHERE userId = ?;
|
SELECT * FROM SessionData WHERE userId = ?;
|
||||||
|
|
||||||
insertSessionData:
|
insertSessionData:
|
||||||
INSERT INTO SessionData(userId, deviceId, accessToken, refreshToken, homeserverUrl, isSoftLogout, slidingSyncProxy) VALUES ?;
|
INSERT INTO SessionData(userId, deviceId, accessToken, refreshToken, homeserverUrl, slidingSyncProxy) VALUES ?;
|
||||||
|
|
||||||
removeSession:
|
removeSession:
|
||||||
DELETE FROM SessionData WHERE userId = ?;
|
DELETE FROM SessionData WHERE userId = ?;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue