diff --git a/logic/src/commonMain/kotlin/com/wire/kalium/logic/feature/debug/BreakSessionUseCase.kt b/logic/src/commonMain/kotlin/com/wire/kalium/logic/feature/debug/BreakSessionUseCase.kt index b639425839c..9db60905169 100644 --- a/logic/src/commonMain/kotlin/com/wire/kalium/logic/feature/debug/BreakSessionUseCase.kt +++ b/logic/src/commonMain/kotlin/com/wire/kalium/logic/feature/debug/BreakSessionUseCase.kt @@ -19,6 +19,7 @@ package com.wire.kalium.logic.feature.debug import com.wire.kalium.cryptography.CryptoClientId import com.wire.kalium.cryptography.CryptoSessionId +import com.wire.kalium.logger.obfuscateId import com.wire.kalium.logic.CoreFailure import com.wire.kalium.logic.data.conversation.ClientId import com.wire.kalium.logic.data.id.IdMapper @@ -26,6 +27,7 @@ import com.wire.kalium.logic.data.user.UserId import com.wire.kalium.logic.di.MapperProvider import com.wire.kalium.logic.feature.ProteusClientProvider import com.wire.kalium.logic.functional.fold +import com.wire.kalium.logic.kaliumLogger import com.wire.kalium.util.KaliumDispatcher import com.wire.kalium.util.KaliumDispatcherImpl import kotlinx.coroutines.withContext @@ -56,6 +58,7 @@ internal class BreakSessionUseCaseImpl internal constructor( clientId: ClientId ): BreakSessionResult = withContext(dispatchers.io) { return@withContext proteusClientProvider.getOrError().fold({ + kaliumLogger.e("Failed to get proteus client for break session $it") return@fold BreakSessionResult.Failure(it) }, { proteusClient -> val cryptoUserID = idMapper.toCryptoQualifiedIDId(userId) @@ -65,6 +68,7 @@ internal class BreakSessionUseCaseImpl internal constructor( ) // create a new session with the same session id proteusClient.createSession(proteusClient.newLastPreKey(), cryptoSessionId) + kaliumLogger.e("Created new session for ${userId.toLogString()} with ${clientId.value.obfuscateId()}") return@fold BreakSessionResult.Success }) } diff --git a/logic/src/commonMain/kotlin/com/wire/kalium/logic/feature/sessionreset/ResetSessionUseCase.kt b/logic/src/commonMain/kotlin/com/wire/kalium/logic/feature/sessionreset/ResetSessionUseCase.kt index df38db5ebb7..3ad3ba43324 100644 --- a/logic/src/commonMain/kotlin/com/wire/kalium/logic/feature/sessionreset/ResetSessionUseCase.kt +++ b/logic/src/commonMain/kotlin/com/wire/kalium/logic/feature/sessionreset/ResetSessionUseCase.kt @@ -31,6 +31,7 @@ import com.wire.kalium.logic.feature.ProteusClientProvider import com.wire.kalium.logic.feature.message.SessionResetSender import com.wire.kalium.logic.functional.flatMap import com.wire.kalium.logic.functional.fold +import com.wire.kalium.logic.kaliumLogger import com.wire.kalium.util.KaliumDispatcher import com.wire.kalium.util.KaliumDispatcherImpl import kotlinx.coroutines.withContext @@ -41,6 +42,7 @@ import kotlinx.coroutines.withContext interface ResetSessionUseCase { suspend operator fun invoke(conversationId: ConversationId, userId: UserId, clientId: ClientId): ResetSessionResult } + internal class ResetSessionUseCaseImpl internal constructor( private val proteusClientProvider: ProteusClientProvider, private val sessionResetSender: SessionResetSender, @@ -54,6 +56,7 @@ internal class ResetSessionUseCaseImpl internal constructor( clientId: ClientId ): ResetSessionResult = withContext(dispatchers.io) { return@withContext proteusClientProvider.getOrError().fold({ + kaliumLogger.e("Failed to get proteus client for session reset $it") return@fold ResetSessionResult.Failure(it) }, { proteusClient -> val cryptoUserID = idMapper.toCryptoQualifiedIDId(userId) @@ -68,14 +71,21 @@ internal class ResetSessionUseCaseImpl internal constructor( userId = userId, clientId = clientId ).flatMap { + kaliumLogger.e("Successfully sent session reset message") messageRepository.markMessagesAsDecryptionResolved( conversationId, userId, clientId ) }.fold( - { ResetSessionResult.Failure(it) }, - { ResetSessionResult.Success } + { + kaliumLogger.e("Failed to mark decryption error as resolved") + ResetSessionResult.Failure(it) + }, + { + kaliumLogger.e("Successfully marked decryption error as resolved") + ResetSessionResult.Success + } ) })