Constructors

Link copied to clipboard
constructor(authenticationScopeProvider: AuthenticationScopeProvider, rootPathsProvider: RootPathsProvider, appContext: Context, globalScope: GlobalKaliumScope, globalDatabaseBuilder: GlobalDatabaseBuilder, kaliumConfigs: KaliumConfigs, globalPreferences: GlobalPrefProvider, globalCallManager: GlobalCallManager, userStorageProvider: UserStorageProvider, userAuthenticatedNetworkProvider: UserAuthenticatedNetworkProvider, networkStateObserver: NetworkStateObserver, logoutCallback: LogoutCallback, userAgent: String, syncShutdownCoordinator: SyncShutdownCoordinator)
constructor(authenticationScopeProvider: AuthenticationScopeProvider, rootPathsProvider: RootPathsProvider, globalScope: GlobalKaliumScope, kaliumConfigs: KaliumConfigs, globalPreferences: GlobalPrefProvider, globalCallManager: GlobalCallManager, globalDatabaseBuilder: GlobalDatabaseBuilder, userStorageProvider: UserStorageProvider, userAuthenticatedNetworkProvider: UserAuthenticatedNetworkProvider, networkStateObserver: NetworkStateObserver, logoutCallback: LogoutCallback, userAgent: String, keychainConfig: ApplePersistenceConfig, syncShutdownCoordinator: SyncShutdownCoordinator)
constructor(authenticationScopeProvider: AuthenticationScopeProvider, rootPathsProvider: RootPathsProvider, globalScope: GlobalKaliumScope, kaliumConfigs: KaliumConfigs, globalPreferences: GlobalPrefProvider, globalCallManager: GlobalCallManager, globalDatabaseBuilder: GlobalDatabaseBuilder, userStorageProvider: UserStorageProvider, userAuthenticatedNetworkProvider: UserAuthenticatedNetworkProvider, networkStateObserver: NetworkStateObserver, logoutCallback: LogoutCallback, userAgent: String, useInMemoryDatabase: Boolean, syncShutdownCoordinator: SyncShutdownCoordinator)

Functions

Link copied to clipboard
internal open override fun create(userId: UserId): UserSessionScope
internal open override fun create(userId: UserId): UserSessionScope
internal open override fun create(userId: UserId): UserSessionScope
Link copied to clipboard
open suspend override fun delete(userId: UserId)
actual open suspend override fun delete(userId: UserId)

The host must quiesce account use cases and global account collectors before requesting release.

expect open suspend override fun delete(userId: UserId)
open suspend override fun delete(userId: UserId)
Link copied to clipboard
open suspend override fun deleteSession(userId: UserId, sessionRepository: SessionRepository): Either<StorageFailure, Unit>
actual open suspend override fun deleteSession(userId: UserId, sessionRepository: SessionRepository): Either<StorageFailure, Unit>
expect open suspend override fun deleteSession(userId: UserId, sessionRepository: SessionRepository): Either<StorageFailure, Unit>
open suspend override fun deleteSession(userId: UserId, sessionRepository: SessionRepository): Either<StorageFailure, Unit>
Link copied to clipboard
open override fun get(userId: UserId): UserSessionScope?
actual open override fun get(userId: UserId): UserSessionScope?
expect open override fun get(userId: UserId): UserSessionScope?
open override fun get(userId: UserId): UserSessionScope?
Link copied to clipboard
open override fun getOrCreate(userId: UserId): UserSessionScope
open override fun <T> getOrCreate(userId: UserId, action: UserSessionScope.() -> T): T
open override fun <T> getOrCreate(userId: UserId, action: UserSessionScope.() -> T): T
actual open override fun getOrCreate(userId: UserId): UserSessionScope
expect open override fun getOrCreate(userId: UserId): UserSessionScope
expect open override fun <T> getOrCreate(userId: UserId, action: UserSessionScope.() -> T): T
open override fun getOrCreate(userId: UserId): UserSessionScope
open override fun <T> getOrCreate(userId: UserId, action: UserSessionScope.() -> T): T
Link copied to clipboard
open suspend override fun invalidateReceiving(userId: UserId, originatingScope: CoroutineScope)
actual open suspend override fun invalidateReceiving(userId: UserId, originatingScope: CoroutineScope)

Readiness is durable: revoke it before a change the extension cannot detect, such as registration.

expect open suspend override fun invalidateReceiving(userId: UserId, originatingScope: CoroutineScope)
open suspend override fun invalidateReceiving(userId: UserId, originatingScope: CoroutineScope)
Link copied to clipboard
open suspend override fun logout(userId: UserId, originatingScope: CoroutineScope, prepare: suspend () -> Unit, clearLocalData: suspend () -> Unit): Boolean
actual open suspend override fun logout(userId: UserId, originatingScope: CoroutineScope, prepare: suspend () -> Unit, clearLocalData: suspend () -> Unit): Boolean
expect open suspend override fun logout(userId: UserId, originatingScope: CoroutineScope, prepare: suspend () -> Unit, clearLocalData: suspend () -> Unit): Boolean
open suspend override fun logout(userId: UserId, originatingScope: CoroutineScope, prepare: suspend () -> Unit, clearLocalData: suspend () -> Unit): Boolean
Link copied to clipboard
open suspend override fun open(userId: UserId): UserSessionScope
open suspend override fun <T> open(userId: UserId, action: UserSessionScope.() -> T): T
open suspend override fun <T> open(userId: UserId, action: UserSessionScope.() -> T): T
actual open suspend override fun open(userId: UserId): UserSessionScope
expect open suspend override fun open(userId: UserId): UserSessionScope
expect open suspend override fun <T> open(userId: UserId, action: UserSessionScope.() -> T): T
open suspend override fun open(userId: UserId): UserSessionScope
open suspend override fun <T> open(userId: UserId, action: UserSessionScope.() -> T): T
Link copied to clipboard
open suspend override fun prepareReceiving(userId: UserId, originatingScope: CoroutineScope): Either<CoreFailure, Unit>
actual open suspend override fun prepareReceiving(userId: UserId, originatingScope: CoroutineScope): Either<CoreFailure, Unit>
expect open suspend override fun prepareReceiving(userId: UserId, originatingScope: CoroutineScope): Either<CoreFailure, Unit>
open suspend override fun prepareReceiving(userId: UserId, originatingScope: CoroutineScope): Either<CoreFailure, Unit>
Link copied to clipboard

Only a host with foreground/background execution time may resume a suspended account.

Link copied to clipboard
Link copied to clipboard
open suspend override fun storeSession(session: StoreSessionParam, sessionRepository: SessionRepository): Either<StorageFailure, Unit>
actual open suspend override fun storeSession(session: StoreSessionParam, sessionRepository: SessionRepository): Either<StorageFailure, Unit>

The host must quiesce public operations and collectors before replacing a cached session.

expect open suspend override fun storeSession(session: StoreSessionParam, sessionRepository: SessionRepository): Either<StorageFailure, Unit>
open suspend override fun storeSession(session: StoreSessionParam, sessionRepository: SessionRepository): Either<StorageFailure, Unit>
Link copied to clipboard
suspend fun suspendForBackground(userId: UserId)

Keep the session and its public clients alive; transfer only writable/native resources.