UserScopedNomadHookFactory

internal class UserScopedNomadHookFactory(createPersistenceHook: (UserId, userStorageProvider: UserStorageProvider, nomadAuthenticatedNetworkAccess: NomadAuthenticatedNetworkAccess, scope: CoroutineScope) -> PersistenceEventHookNotifier = { selfUserId, userStorageProvider, nomadAuthenticatedNetworkAccess, scope -> createUserScopedDebouncedNomadRemoteBackupChangeLogHookNotifier( selfUserId = selfUserId, userStorageProvider = userStorageProvider, nomadAuthenticatedNetworkAccess = nomadAuthenticatedNetworkAccess, scope = scope, config = NomadRemoteBackupDebouncedSyncConfig(), ) }, createCryptoHook: (UserId, scope: CoroutineScope, backup: suspend () -> Unit) -> CryptoStateChangeHookNotifier = { selfUserId, scope, backup -> createUserScopedNomadCryptoStateChangeHookNotifier( selfUserId = selfUserId, scope = scope, backup = backup, ) })

Constructors

Link copied to clipboard
constructor(createPersistenceHook: (UserId, userStorageProvider: UserStorageProvider, nomadAuthenticatedNetworkAccess: NomadAuthenticatedNetworkAccess, scope: CoroutineScope) -> PersistenceEventHookNotifier = { selfUserId, userStorageProvider, nomadAuthenticatedNetworkAccess, scope -> createUserScopedDebouncedNomadRemoteBackupChangeLogHookNotifier( selfUserId = selfUserId, userStorageProvider = userStorageProvider, nomadAuthenticatedNetworkAccess = nomadAuthenticatedNetworkAccess, scope = scope, config = NomadRemoteBackupDebouncedSyncConfig(), ) }, createCryptoHook: (UserId, scope: CoroutineScope, backup: suspend () -> Unit) -> CryptoStateChangeHookNotifier = { selfUserId, scope, backup -> createUserScopedNomadCryptoStateChangeHookNotifier( selfUserId = selfUserId, scope = scope, backup = backup, ) })

Functions

Link copied to clipboard
fun createIfConfigured(selfUserId: UserId, nomadServiceUrl: String?, userStorageProvider: UserStorageProvider, userAuthenticatedNetworkProvider: UserAuthenticatedNetworkProvider, scope: CoroutineScope, backup: suspend () -> Unit): UserScopedNomadHooks?