7
7
8
8
package io.element.android.appnav.di
9
9
10
+ import androidx.annotation.VisibleForTesting
10
11
import com.bumble.appyx.core.state.MutableSavedStateMap
11
12
import com.bumble.appyx.core.state.SavedStateMap
12
13
import com.squareup.anvil.annotations.ContributesBinding
@@ -16,8 +17,6 @@ import io.element.android.libraries.matrix.api.MatrixClient
16
17
import io.element.android.libraries.matrix.api.MatrixClientProvider
17
18
import io.element.android.libraries.matrix.api.auth.MatrixAuthenticationService
18
19
import io.element.android.libraries.matrix.api.core.SessionId
19
- import io.element.android.services.appnavstate.api.SyncOrchestrator
20
- import io.element.android.services.appnavstate.api.SyncOrchestratorProvider
21
20
import kotlinx.coroutines.runBlocking
22
21
import kotlinx.coroutines.sync.Mutex
23
22
import kotlinx.coroutines.sync.withLock
@@ -34,11 +33,10 @@ private const val SAVE_INSTANCE_KEY = "io.element.android.x.di.MatrixClientsHold
34
33
*/
35
34
@SingleIn(AppScope ::class )
36
35
@ContributesBinding(AppScope ::class , boundType = MatrixClientProvider ::class )
37
- @ContributesBinding(AppScope ::class , boundType = SyncOrchestratorProvider ::class )
38
36
class MatrixSessionCache @Inject constructor(
39
37
private val authenticationService : MatrixAuthenticationService ,
40
- private val syncOrchestratorFactory : DefaultSyncOrchestrator .Factory ,
41
- ) : MatrixClientProvider, SyncOrchestratorProvider {
38
+ private val syncOrchestratorFactory : SyncOrchestrator .Factory ,
39
+ ) : MatrixClientProvider {
42
40
private val sessionIdsToMatrixSession = ConcurrentHashMap <SessionId , InMemoryMatrixSession >()
43
41
private val restoreMutex = Mutex ()
44
42
@@ -74,7 +72,8 @@ class MatrixSessionCache @Inject constructor(
74
72
}
75
73
}
76
74
77
- override fun getSyncOrchestrator (sessionId : SessionId ): SyncOrchestrator ? {
75
+ @VisibleForTesting(otherwise = VisibleForTesting .PRIVATE )
76
+ internal fun getSyncOrchestrator (sessionId : SessionId ): SyncOrchestrator ? {
78
77
return sessionIdsToMatrixSession[sessionId]?.syncOrchestrator
79
78
}
80
79
0 commit comments