KeyStore

class KeyStore(outdatedKeysRepository: OutdatedKeysRepository, deviceKeysRepository: DeviceKeysRepository, crossSigningKeysRepository: CrossSigningKeysRepository, keyVerificationStateRepository: KeyVerificationStateRepository, keyChainLinkRepository: KeyChainLinkRepository, secretsRepository: SecretsRepository, secretKeyRequestRepository: SecretKeyRequestRepository, roomKeyRequestRepository: RoomKeyRequestRepository, tm: RepositoryTransactionManager, config: MatrixClientConfiguration, statisticCollector: ObservableCacheStatisticCollector, storeScope: CoroutineScope, clock: Clock) : Store

Constructors

Link copied to clipboard
constructor(outdatedKeysRepository: OutdatedKeysRepository, deviceKeysRepository: DeviceKeysRepository, crossSigningKeysRepository: CrossSigningKeysRepository, keyVerificationStateRepository: KeyVerificationStateRepository, keyChainLinkRepository: KeyChainLinkRepository, secretsRepository: SecretsRepository, secretKeyRequestRepository: SecretKeyRequestRepository, roomKeyRequestRepository: RoomKeyRequestRepository, tm: RepositoryTransactionManager, config: MatrixClientConfiguration, statisticCollector: ObservableCacheStatisticCollector, storeScope: CoroutineScope, clock: Clock)

Types

Link copied to clipboard

This prevents deadlocks when no parallel write transactions are allowed, but a second transaction is needed to update outdated keys.

Functions

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
open suspend override fun clearCache()

Only deletes everything, that can be fetched from server.

Link copied to clipboard
open suspend override fun deleteAll()

Deletes everything.

Link copied to clipboard
suspend fun deleteCrossSigningKeys(userId: UserId)
Link copied to clipboard
suspend fun deleteDeviceKeys(userId: UserId)
Link copied to clipboard
suspend fun deleteKeyChainLinksBySignedKey(userId: UserId, signedKey: Key.Ed25519Key)
Link copied to clipboard
suspend fun deleteRoomKeyRequest(requestId: String)
Link copied to clipboard
suspend fun deleteSecretKeyRequest(requestId: String)
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
suspend fun getOutdatedKeys(): Set<UserId>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
open suspend fun init(coroutineScope: CoroutineScope)
Link copied to clipboard
suspend fun saveDeviceKeys(userId: UserId, deviceKeys: Map<String, StoredDeviceKeys>)
Link copied to clipboard
suspend fun saveKeyChainLink(keyChainLink: KeyChainLink)
Link copied to clipboard
Link copied to clipboard
suspend fun updateCrossSigningKeys(userId: UserId, updater: suspend (Set<StoredCrossSigningKeys>?) -> Set<StoredCrossSigningKeys>?)
Link copied to clipboard
suspend fun updateDeviceKeys(userId: UserId, updater: suspend (Map<String, StoredDeviceKeys>?) -> Map<String, StoredDeviceKeys>?)
Link copied to clipboard
suspend fun updateOutdatedKeys(updater: suspend (Set<UserId>) -> Set<UserId>)
Link copied to clipboard
suspend fun updateSecrets(updater: suspend (Map<SecretType, StoredSecret>) -> Map<SecretType, StoredSecret>)